Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 루나네스
- 신동혁
- 소년포비
- 훈스닷넷
- 윈도데브
- 옴니아2
- 윈도우폰7
- 지승욱
- winmodev
- 헤이맨
- windows mobile 6.5
- 안드로이드
- 윈모데브
- 윈도우폰
- UX베이커리
- 윈도우모바일
- 거제도
- 주신영
- 데브피아
- 실버라이트 코리아
- 쉐어포인트코리아
- 소년포비소프트
- 서진호
- 스마트폰
- 윈도우 모바일
- 신석현
- 마이크로소프트
- 황광진
- MIX10
- 김춘배
Archives
- Today
- Total
소년포비의 세계정복!!
[C#] SQL Server Compact 3.5 를 활용한 로컬 데이터베이스 연결하기 본문
작은 응용프로그램이나 모바일 프로그램을 개발할때 DB가 필요할때가 있습니다. 그럴땐 보통 엑세스의 MDB나
SqlLite를 많이 쓰시는데요. Microsoft사의 SQL Server Compact 3.5 라는것도 있습니다. 확장자는 SDF로 되어있는
로컬데이터베이스입니다.
MSDN의 관련 자료는
http://msdn.microsoft.com/ko-kr/library/aa983321.aspx
위 페이지로 들어가시면 자세한 설명이 나와있습니다.
읽어보시면 드래그앤 드롭으로 윈폼에서 쉽게 DB를 연결할 수 있습니다.
하지만 순수하게 SQL 쿼리를 날려서 데이터를 가져오는 방법은 나와있지 않아서 혹시 필요하신분들이 계시면
도움이 되었으면 좋겠습니다. 우선 위 페이지를 보면서 DB를 프로젝트에 생성하고, 테스트용 테이블을 하나 만듭니다.
데이터베이스의 파일 이름은 "DB.SDF"입니다.
저는 Test테이블에 Name이라는 nvarchar형의 컬럼을 하나 추가했습니다.
01.
using
System;
02.
using
System.Data.SqlServerCe;
03.
04.
namespace
SDFSampleCS
05.
{
06.
class
Program
07.
{
08.
static
void
Main(
string
[] args)
09.
{
10.
// 데이터베이스 연결
11.
string
connectionString = @
"Data Source=|DataDirectory|\DB.sdf"
;
12.
SqlCeConnection con =
new
SqlCeConnection(connectionString);
13.
con.Open();
14.
15.
// 데이터베이스 커맨드 생성
16.
SqlCeCommand cmd =
new
SqlCeCommand();
17.
18.
// 커맨드에 커넥션을 연결
19.
cmd.Connection = con;
20.
21.
// 트랜잭션 생성
22.
SqlCeTransaction tran = con.BeginTransaction();
23.
cmd.Transaction = tran;
24.
25.
26.
// 쿼리 생성 : Insert 쿼리
27.
cmd.CommandText =
"INSERT INTO Test VALUES('소녀시대')"
;
28.
29.
// 쿼리 실행
30.
cmd.ExecuteNonQuery();
31.
32.
// 반복으로 몇개 더 넣어보겠습니다.
33.
cmd.CommandText =
"INSERT INTO Test VALUES('원더걸스')"
;
34.
cmd.ExecuteNonQuery();
35.
36.
cmd.CommandText =
"INSERT INTO Test VALUES('카라')"
;
37.
cmd.ExecuteNonQuery();
38.
39.
// 커밋
40.
tran.Commit();
41.
42.
// SELECT 쿼리로 변경
43.
cmd.CommandText =
"SELECT * FROM Test"
;
44.
45.
// DataReader에 쿼리 결과값 저장
46.
SqlCeDataReader reader = cmd.ExecuteReader();
47.
48.
// 결과값 출력
49.
while
(reader.Read())
50.
{
51.
Console.WriteLine(reader[
"Name"
]);
52.
}
53.
54.
con.Close();
55.
}
56.
}
57.
}
'프로그램 세상 > C#' 카테고리의 다른 글
C# 오라클 DB 연결 예제 (0) | 2009.10.02 |
---|---|
[C#] 윈도우즈의 폴더 경로 가져오기 (0) | 2009.10.02 |
Process Kill 하기 (0) | 2009.10.02 |
C# 원격 네트워크 드라이브 연결 (0) | 2009.10.02 |
C# 소켓통신 예제 소스 (0) | 2009.09.30 |