일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- sqlite3
- NUnit
- c#
- C# 파일 암/복호화
- DrawEllipse
- MDB Select
- DrawRectangle
- JSON
- 경기도 버스정보시스템
- Winform
- 공공 데이터 포털
- GDI+
- 시
- 디자인 패턴
- 객체지향
- eventhandler
- solid
- Cell Border Style
- eventargs
- 버스 API
- MDB Connect
- WPF
- 경기도 버스
- Json.NET
- delegate
- TDD
- Excel Cell Format
- C# MDB Handle
- MVC
- C# MDB
Archives
- Today
- Total
White Whale Studio
[C# & MDB - 2] Insert, Update, Delete 본문
반응형
[C# & MDB - 1] Connect & Select 포스팅에 이어 해당 포스팅에서는 Insert, Update, Delete를 살펴봅니다.
Insert 코드는 다음과 같습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
private void Insert()
{
var con = new OleDbConnection(connStr);
var cmd = new OleDbCommand();
cmd.Connection = con;
cmd.CommandText = "INSERT INTO TB_USER ([USER_ID], [EMAIL], [UPD_DATE])" +
"values (@USER_ID, @EMAIL, @UPD_DATE);";
cmd.Parameters.AddWithValue("@USER_ID", hkInfo.USER_ID);
cmd.Parameters.AddWithValue("@EMAIL", hkInfo.EMAIL);
cmd.Parameters.AddWithValue("@UPD_DATE", DateTime.Now.ToString("yyyy-MM-dd"));
con.Open();
cmd.ExecuteNonQuery();
con.Close();
}
|
cs |
지난번 포스팅과 다르게 using을 사용하지 않았는데요. using을 사용하는 구문은 자원해제는 자체적으로 알아서 해주는 장점이 있습니다.
필요에 따라서 편하게 사용하시면 됩니다.
Insert 구문은 위와 같이 CommandText에는 쿼리를 입력하고 @USER_ID와 같이 파라미터를 입력해주시면 됩니다.
Update 코드는 다음과 같습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
public void UpdateHotKeyInfo(HOTKEY_INFO hkInfo)
{
using (var con = new OleDbConnection(connStr))
{
con.Open();
var cmd = new OleDbCommand();
cmd.Connection = con;
cmd.CommandText = "UPDATE TB_HOTKEY SET [HOTKEY_NAME] = ?, [SHIFT_YN] = ?, [CNTL_YN] = ?" +
", [ALT_YN] = ?, [KEY] = ?, [KEY_VALUE] = ?, [IS_ENCRYPTED] = ?, [UPD_DATE] = ? WHERE ID = ?;";
cmd.Parameters.AddWithValue("@HOTKEY_NAME", OleDbType.VarChar).Value = hkInfo.HOTKEY_NAME;
cmd.Parameters.AddWithValue("@SHIFT_YN", OleDbType.Boolean).Value = hkInfo.SHIFT_YN;
cmd.Parameters.AddWithValue("@CNTL_YN", OleDbType.Boolean).Value = hkInfo.CNTL_YN;
cmd.Parameters.AddWithValue("@ALT_YN", OleDbType.Boolean).Value = hkInfo.ALT_YN;
cmd.Parameters.AddWithValue("@KEY", OleDbType.VarChar).Value = hkInfo.KEY.ToString();
cmd.Parameters.AddWithValue("@KEY_VALUE", OleDbType.VarChar).Value = hkInfo.IS_ENCRYPTED ? hkInfo.KEY_VALUE_ENC : hkInfo.KEY_VALUE;
cmd.Parameters.AddWithValue("@IS_ENCRYPTED", OleDbType.Boolean).Value = hkInfo.IS_ENCRYPTED;
cmd.Parameters.AddWithValue("@UPD_DATE", OleDbType.VarChar).Value = DateTime.Now.ToString("yyyy-MM-dd");
cmd.Parameters.AddWithValue("@ID", OleDbType.Integer).Value = hkInfo.ID;
cmd.ExecuteNonQuery();
con.Close();
}
}
|
cs |
Insert 구문과 차이점이 있다면 쿼리쪽 파라미터에는 ?를 넣고 실제 파라미터를 추후에 지정한다는 점입니다.
파라미터의 순서가 중요하니 꼭 지켜주어야합니다.
Delete 코드는 다음과 같습니다.
1
2
3
4
5
6
7
8
9
10
11
|
public void Delete(HOTKEY_INFO hkInfo)
{
var con = new OleDbConnection(connStr);
var cmd = new OleDbCommand();
cmd.Connection = con;
cmd.CommandText = "DELETE FROM TB_HOTKEY WHERE ID = ?;";
cmd.Parameters.AddWithValue("@ID", hkInfo.ID);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
}
|
cs |
Update와 유사하게 파라미터 넘기는 방식은 유사합니다. 위와 같이 사용해주시면 됩니다.
다음 포스팅에서는 MDB 파일의 암/복호화에 대해 알아보겠습니다.
반응형
'IT Engineering > C#.net' 카테고리의 다른 글
[C# & MDB - 3] 파일 암/복호화 (0) | 2023.02.13 |
---|---|
[C# & MDB - 1] Connect & Select (0) | 2023.02.13 |
C# 중복 실행시 기존프로그램을 활성화 하기 (0) | 2023.02.13 |
Excel Cell Border 및 배경색, 폰트 색상, 데이터 형식 지정 (0) | 2023.02.08 |
C# 바로가기 아이콘 만들기 Shortcut (0) | 2021.01.28 |
Comments