HOWTO · Csharp

C#에서 SQL 데이터베이스 만들기

이 자습서에서는 SQL 데이터베이스를 만드는 방법과 해당 데이터베이스 내의 테이블에서 데이터를 저장하고 검색하는 방법을 배웁니다.

이 문서에서는 데이터를 읽고 쓸 수 있도록 SQL 데이터베이스 및 그 안에 테이블을 설정하는 방법에 대한 개요를 제공합니다.

SQL 데이터베이스 생성 단계

다음은 SQL 데이터베이스를 만드는 단계입니다.

  • 시작하려면 SQL Management Studio를 실행하십시오.
  • 연결하려면 (LocalDB)MSSQLLocalDB와 같은 서버 이름을 입력한 다음 연결 버튼을 클릭해야 합니다.
  • 새 데이터베이스를 생성하려면 왼쪽 패널에서 데이터베이스 아이콘을 마우스 오른쪽 버튼으로 클릭한 다음 컨텍스트 메뉴에서 새 데이터베이스를 선택합니다. 그리고 마지막으로 이름을 지어주세요.
  • 그런 다음 드롭다운 메뉴에서 새 쿼리를 선택한 후 다음과 같이 쿼리를 작성합니다.
    use readwrite
    create table mydata (id int primary key identity(1,1),myname varchar(50),Email varchar(50),phone varchar(50))
    select * from mydata
    

Microsoft Visual Studio에서 Windows Form 만들기

Microsoft Visual Studio에서 첫 번째 단계는 새 프로젝트를 만드는 것입니다. 프로젝트 유형이라고 표시된 드롭다운 옵션에서 Windows Form Application C#을 선택합니다.

두 개의 파일을 포함하는 양식을 생성합니다. 하나는 form.cs이고 다른 하나는 form.cs (Design)입니다. 디자인 파일에 3개의 레이블을 추가하고 nameTxt, emailTxtphoneTxt로 이름을 지정합니다.

Name, EmailPhone#이라는 단어로 각각을 채웁니다. 프로젝트를 저장합니다.

두 개의 버튼을 만들고 getDatasaveData라는 이름을 지정해야 합니다. 버튼에 제공된 텍스트 상자에 데이터 저장 및 데이터 가져오기를 입력합니다.

또한 데이터 그리드 보기가 양식에 추가되어야 합니다. 이 그리드 보기는 데이터베이스의 기존 테이블에서 데이터를 가져와 테이블의 모든 내용을 출력해야 합니다.

다음은 방금 완성한 양식의 시각적 표현입니다.

C# SQL 데이터베이스 만들기 - 빈 양식

기능 구현

먼저 SqlDataAdapter 유형의 변수를 만들고 da라는 이름을 지정합니다. 이것은 데이터베이스에 저장된 테이블에서 데이터를 가져오는 데 사용하는 것입니다.

SqlDataAdapter da = new SqlDataAdapter(
    "SELECT \* FROM mydata",
    @"Data Source=(LocalDB)\MSSQLLocalDB ; Initial Catalog=readwrite; Integrated Security=True");

다음으로 con이라는 이름이 지정될 SqlConnection 유형의 객체로 데이터베이스 연결을 구축합니다. 여기에서 데이터 소스, 데이터베이스 이름 및 통합 보안을 제공합니다.

SqlConnection con = new SqlConnection(
    @"Data Source=(LocalDB)\MSSQLLocalDB ; Initial Catalog=readwrite; Integrated Security=True");
SqlCommand cmd;

이제 저장 버튼에 대한 코드를 만들 차례입니다. 시작하려면 기능 수행을 시작할 수 있도록 데이터베이스와의 연결을 시작합니다.

텍스트 상자에서 데이터를 수집한 다음 SqlCommand 개체에 연결할 삽입 쿼리를 사용하여 제공된 데이터베이스에 저장합니다. 그런 다음 데이터가 성공적으로 입력되었는지 확인하는 대화 상자가 나타납니다.

private void Savebtn_Click(object sender, EventArgs e) {
  con.Open();
  cmd = new SqlCommand("insert into mydata values ('" + nametxt.Text + "','" + emailtxt.Text +
                           "','" + phonetxt.Text + "')",
                       con);
  cmd.ExecuteNonQuery();
  MessageBox.Show("Data is Saved");
  con.Close();
  nametxt.Clear();
  emailtxt.Clear();
  phonetxt.Clear();
}

마지막으로 데이터를 dataGridView로 가져오는 코드를 작성합니다. 이렇게 하려면 DataSet 유형의 개체를 빌드한 다음 데이터베이스에서 가져온 데이터로 채웁니다.

private void Getbtn_Click(object sender, EventArgs e) {
  DataSet ds = new DataSet();
  da.Fill(ds, "mydata");
  dataGridView1.DataSource = ds.Tables["mydata"].DefaultView;
}

소스 코드:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace Saad_artilce_final_version {
  public partial class Form1 : Form {
    SqlDataAdapter da = new SqlDataAdapter(
        "SELECT * FROM mydata",
        @"Data Source=(LocalDB)\MSSQLLocalDB ; Initial Catalog=readwrite; Integrated Security=True");

    SqlConnection con = new SqlConnection(
        @"Data Source=(LocalDB)\MSSQLLocalDB ; Initial Catalog=readwrite; Integrated Security=True");
    SqlCommand cmd;
    public Form1() {
      InitializeComponent();
    }

    private void Savebtn_Click(object sender, EventArgs e) {
      con.Open();
      cmd = new SqlCommand("insert into mydata values ('" + nametxt.Text + "','" + emailtxt.Text +
                               "','" + phonetxt.Text + "')",
                           con);
      cmd.ExecuteNonQuery();
      MessageBox.Show("Data is Saved");
      con.Close();
      nametxt.Clear();
      emailtxt.Clear();
      phonetxt.Clear();
    }

    private void Getbtn_Click(object sender, EventArgs e) {
      DataSet ds = new DataSet();
      da.Fill(ds, "mydata");
      dataGridView1.DataSource = ds.Tables["mydata"].DefaultView;
    }
  }
}

출력:

C# SQL 데이터베이스 만들기 - 대화 상자

C# SQL 데이터베이스 생성 - 데이터 가져오기