IT/C#

[C#][Database] Mysql Database 연결하기

Ella.J 2019. 5. 27. 17:37
728x90
반응형

2020/02/28 - [IT] - [C#] 가계부 프로그램 만들기 DAY1. Database 설정 및 연결

 

[C#] 가계부 프로그램 만들기 DAY1. Database 설정 및 연결

새해 다짐으로 올해도 돈을 한 번 조금만 써보자.. 돈 관리를 해보자.. 하는 바람에서 가계부를 만들어보기로 했습니다. 부자가 되는 그날까지 돈을 열심히 벌고 열심히 관리하자는 의미도 있고,

ella-devblog.tistory.com

2020.10.15 포스팅 수정

가계부 프로그램에서 사용하기 위해 DBMySql 클래스를 수정하였습니다.

각각의 Select, Insert, Update, Delete 함수는 사용자가 사용방식에 맞게 수정하여 사용할 수 있습니다.

String Sql 구문에서 DataBase에서 입력할 쿼리를 입력하고, 각각의 변수들을 변경하여 사용할 수 있습니다.

현재 아래에 있는 코드들은 가계부 프로그램에서 사용하기 위해 작성한 코드입니다.

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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
using MySql.Data.MySqlClient;
using System;
using System.Data;
using System.Windows.Forms;
 
namespace AccountBook
{
    public class DBMySql
    {
        MySqlConnection conn = new MySqlConnection($"server={Config.Server};uid={Config.UserID};" + 
           $"pwd={Config.UserPassword};database={Config.Database};pooling=false;allow user variables=true");
        MySqlDataAdapter adpt;
        MySqlCommand cmd;
 
        public void Connection()
        {
            try
            {
                conn.Open();
            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString());
                throw;
            }
            conn.Close();
        }
 
        public DataSet SelectAll(string table)
        {
            try
            {
                DataSet ds = new DataSet();
 
                string sql = $"SELECT * FROM {table}";
                adpt = new MySqlDataAdapter(sql, conn);
                adpt.Fill(ds, table);
                if(ds.Tables.Count > 0)
                {
                    return ds;
                } else
                {
                    return null;
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString());
                throw;
            }
        }
 
        public DataSet SelectDetail(string table, string condition, string where = "")
        {
            try
            {
                DataSet ds = new DataSet();
 
                string sql = $"SELECT {condition} FROM {table} {where}";
                adpt = new MySqlDataAdapter(sql, conn);
                adpt.Fill(ds, table);
                if (ds.Tables.Count > 0)
                {
                    return ds;
                }
                else
                {
                    return null;
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString());
                throw;
            }
        }
 
        public void Insert(string table, string value)
        {
            try
            {
                conn.Open();
                string sql = $"INSERT INTO {table} VALUES ({value})";
                cmd = new MySqlCommand(sql, conn);
                cmd.ExecuteNonQuery();
                conn.Close();
            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString());
                throw;
            }
        }
 
        public void Update(string table, string setvalue, string wherevalue)
        {
            try
            {
                conn.Open();
                string sql = $"UPDATE {table} SET {setvalue} WHERE {wherevalue}";
                cmd = new MySqlCommand(sql, conn);
                cmd.ExecuteNonQuery();
                conn.Close();
            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString());
                throw;
            }
        }
 
        public void DeleteAll(string table)
        {
            try
            {
                conn.Open();
                string sql = $"DELETE FROM {table}";
                cmd = new MySqlCommand(sql, conn);
                cmd.ExecuteNonQuery();
                conn.Close();
            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString());
                throw;
            }
        }
 
        public void DeleteDetail(string table, string wherecol, string wherevalue)
        {
            try
            {
                conn.Open();
                string sql = $"DELETE FROM {table} WHERE {wherecol}='{wherevalue}'";
                cmd = new MySqlCommand(sql, conn);
                cmd.ExecuteNonQuery();
                conn.Close();
            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString());
                throw;
            }
        }
    }
}
 
cs

 

728x90
반응형