산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C# 데이터베이스 연결 튜토리얼: SQL Server 연결과 CRUD 작업

데이터베이스 작업은 모든 C# 개발자의 핵심 기술입니다. 이 가이드는 Microsoft SQL Server 연결, 쿼리 실행, Windows Forms 컨트롤에 데이터 바인딩 방법을 보여줍니다.

데이터베이스 연결 기초

Oracle, MySQL, MongoDB, Microsoft SQL Server 중 무엇을 사용하든 연결, 쿼리, 삽입, 업데이트, 삭제 과정은 일관됩니다. 이 튜토리얼에서는 무료 SQL Server Express 에디션을 사용해 SQL Server에 집중합니다.

C#에서 SQL 명령

SqlCommand 클래스는 SQL 문을 데이터베이스로 전송합니다. SELECT 쿼리에는 ExecuteReader, INSERT/UPDATE/DELETE에는 ExecuteNonQuery를 사용합니다.

C#을 SQL Server에 연결

아래는 Demodb라는 데이터베이스에 자격 증명 sa / demo123으로 연결하는 최소한의 Windows Forms 예제입니다. 버튼 클릭 이벤트에서 연결을 열고 메시지 표시 후 닫습니다.

1단계: Visual Studio에서 Windows Forms 프로젝트 생성. 2단계: 텍스트 "Connect"인 btnConnect 버튼 추가. 3단계: 다음 이벤트 핸들러 추가:

using System; 
using System.Data.SqlClient; 
using System.Windows.Forms; 
namespace DemoApplication1 { 
    public partial class Form1 : Form { 
        public Form1() => InitializeComponent(); 
        private void btnConnect_Click(object sender, EventArgs e) { 
            string connectionString = "Data Source=WIN-50GP30FGO75;Initial Catalog=Demodb;User ID=sa;Password=demo123"; 
            using (SqlConnection conn = new SqlConnection(connectionString)) { 
                conn.Open(); 
                MessageBox.Show("Connection Opened!"); 
                conn.Close(); 
            } 
        } 
    } 
}

애플리케이션 실행 후 버튼 클릭 시 확인 메시지 표시.

SqlDataReader로 데이터 읽기

demotb 테이블에 TutorialID, TutorialName 컬럼이 있다고 가정:

TutorialIDTutorialName
1C#
2ASP.NET

다음 코드로 행 조회 및 표시:

string sql = "SELECT TutorialID, TutorialName FROM demotb"; 
using (SqlCommand cmd = new SqlCommand(sql, conn)) 
using (SqlDataReader reader = cmd.ExecuteReader()) { 
    string output = ""; 
    while (reader.Read()) { 
        output += $"ID: {reader["TutorialID"]}, Name: {reader["TutorialName"]}\n"; 
    } 
    MessageBox.Show(output); 
}

레코드 삽입

새 튜토리얼(ID 3, Name VB.NET) 추가:

string insertSql = "INSERT INTO demotb (TutorialID, TutorialName) VALUES (3, 'VB.NET')"; 
using (SqlCommand cmd = new SqlCommand(insertSql, conn)) { 
    cmd.ExecuteNonQuery(); 
}

레코드 업데이트

ID 3 튜토리얼을 "VB.NET Complete"로 업데이트:

string updateSql = "UPDATE demotb SET TutorialName = 'VB.NET Complete' WHERE TutorialID = 3"; 
using (SqlCommand cmd = new SqlCommand(updateSql, conn)) { 
    cmd.ExecuteNonQuery(); 
}

레코드 삭제

ID 3 레코드 제거:

string deleteSql = "DELETE FROM demotb WHERE TutorialID = 3"; 
using (SqlCommand cmd = new SqlCommand(deleteSql, conn)) { 
    cmd.ExecuteNonQuery(); 
}

컨트롤을 데이터에 바인딩

Windows Forms은 데이터 바인딩을 제공하여 수동 UI 업데이트가 필요 없습니다. 두 TextBox 컨트롤을 폼에 드래그, 이름 txtID, txtName 지정, BindingNavigator 추가.

데이터 소스 마법사로 demotb용 프로젝트 데이터 소스 생성. 그런 다음:

  1. txtID 선택, 속성 창에서 DataBindings → Text 클릭, demotbBindingSource – TutorialID에 바인딩
  2. txtName에 TutorialName 바인딩 반복
  3. BindingNavigator의 BindingSource 속성을 demotbBindingSource로 설정

폼 실행 시 텍스트 상자에 첫 레코드 표시, 네비게이터로 행 자동 이동.

DataGridView로 데이터 표시

DataGridView를 폼에 드래그. 속성에서 DataSource를 demotbBindingSource로 설정. 그리드가 테이블의 모든 행으로 자동 채워집니다.

요약

C 언어

  1. 난독화 VPN 서버 이해하기: 작동 원리와 중요성
  2. 레고 마인드스톰 NXT 초음파 센서를 라즈베리 파이에 직접 연결하기
  3. C 문자열 완전 정복: 선언, 입출력, 라이브러리 함수
  4. C언어 realloc() 활용법: 문법, 모범 사례, 실전 예제
  5. C언어 free() 함수 마스터하기: 실전 가이드와 예제
  6. Java String length() 메서드: 문자열 크기 구하기 (예제 포함)
  7. Java BufferedReader로 파일 읽기: 실전 가이드와 예제
  8. 미국 공급망 강화: 내륙 항만의 전략적 역할
  9. 서버 자동화의 진화: 데스크톱 매크로에서 FANG 플랫폼급 인프라로
  10. Haas CNC를 PC/노트북에 연결하는 단계별 가이드