본문 바로가기

Programing (프로그래밍)/WPF & C# (C Sharp)

WPF & C# - MySQL ( 접속 상태 확인 / 테이블 생성 / 값 입력 / MySqlConnection / CreateTable / InputValue )

728x90
반응형


 WPF & C# - MySQL ( 접속 상태 확인 / 테이블 생성 / 값 입력 / MySqlConnection / CreateTable / InputValue )



Nuget 패키지 관리 > mysql 검색 및 설치





WPF & C# 에서 MYSQL 명령어를 사용하거나 접속하기위해서 반드시 필요하다.

요즘은 Nuget 다운로드가 가능하니 위의 그림처럼 쉽게 다운 받자.


testMysql.zip



MainWindow.xaml.cs



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
MySqlConnection conn;
string dbTable = "testTable";   // 접근할 테이블 설정
string dbInfo()
{
    string dbServer = "";
    string dbDatabase = "";
    string dbUid = "";
    string dbPwd = "";
    string dbSslMode = "none";
    string Conn = "Server=" + dbServer + ";" + "Database=" + dbDatabase + ";" + "Uid=" + dbUid + ";" + "Pwd=" + dbPwd + ";" + "SslMode=" + dbSslMode;
    return Conn;
}
 
 
private void btn_Click(object sender, RoutedEventArgs e)
{
    try {
        using (conn = new MySqlConnection(dbInfo()))
        {
            conn.Open();
            if (conn.State == ConnectionState.Open)
            {
                MessageBox.Show("서버에 연결");
            }
 
            // Mysql DB Table 생성
            string sql = "create table " + dbTable + "(name VARCHAR(20),age VARCHAR(20))";
            MySqlCommand cmd = new MySqlCommand(sql, conn);
            cmd.ExecuteNonQuery();
            MessageBox.Show("테이블 생성 성공");
 
            // Mysql DB Table 값 입력
            string sql2 = "insert into " + dbTable + " values('홍길동','100')";
            MySqlCommand cmd2 = new MySqlCommand(sql2, conn);
            cmd2.ExecuteNonQuery();
            MessageBox.Show("입력 성공");
 
            // Mysql DB Table 값 가져오기
            string sql3 = "select * from " + dbTable;
            MySqlCommand cmd3 = new MySqlCommand(sql3, conn);
            MySqlDataReader rdr = cmd3.ExecuteReader();
            lbx.Items.Clear();
 
            while (rdr.Read())
            {
                string name = rdr[0].ToString();
                string age = rdr[1].ToString();
                lbx.Items.Add(name + age);
            }
            rdr.Close();
 
            conn.Close();   // 연결 종료
        }
    }
    catch (Exception ex) { MessageBox.Show(ex.Message); }
}
cs




728x90
반응형