Posts

[C#, Sqlite] C# 에서 Sqlite 쓰는법

avatar of @son10001
25
@son10001
·
0 views
·
2 min read

C# 에서 sqlite 를 쓸려면 여러가지 방법이 있다.

대표적으로 dll 파일만 참조로 등록하거나, 아예 설치 패키지로 설치하거나, 누겟으로 설치하는 방법이 있다.

이번에는 가장 간편한 방법인 비쥬얼 스튜디오의 누겟 설치.

일단 사용할 프로젝으를 생성.

프로젝트 명은 원하는 대로 설정.

프로젝트를 생성한 후, 누겟 패키지 관리자로 이동한다.

패키지 관리자에서 "sqlite" 로 검색하면 여러가지 패키지가 검색된다. 이 중에서 "system.Data.SQLite" 라는 이름의 패키지를 설치한다. 비슷한 패키지가 제법 많으므로 잘 살펴본뒤 설치 할 것.

저 패키지를 설치하면 관련 패키지들도 일괄 설치된다.

패키지가 설치되면 자동으로 참조에 "System.Data.SQLite" 가 추가된다. 만약 이 참조가 자동으로 설치되지 않으면 패키지를 잘못설치한 것이므로 다시 확인하고 설치해야 한다.

참조에 저 패키지가 등록되어 있어야 프로젝트 내에서 SQLite 패키지를 사용할 수 있다.

sqlite 가 정상적으로 설치되었는지는 "select sqlite_version()" 구문을 실행 해보면 알수 있다.

별 문제가 없다면 create, insert, update 구문은 "ExecuteNonQuery" 명령어를 사용하고 select 구문은 "ExecuteReader" 구문으로 데이터를 조회 할수 있다.

예제를 실행 해보면 콘솔창에 DB 내용이 조회되는것을 볼 수 있다.

private void Form1_Load(object sender, EventArgs e) { string connStr = @"Data Source=C:\MyProg\DotNet\sqlite\mysqlite.db"; string stm = "SELECT SQLITE_VERSION()";

var con = new SQLiteConnection(connStr); con.Open();

var cmd = new SQLiteCommand(con);

cmd.CommandText = @"CREATE TABLE cars(id INTEGER PRIMARY KEY, name TEXT, price INT)"; cmd.ExecuteNonQuery();

cmd.CommandText = "INSERT INTO cars(name, price) VALUES('내차', 1000000)"; cmd.ExecuteNonQuery();

stm = "SELECT * FROM cars"; cmd = new SQLiteCommand(stm, con);

SQLiteDataReader rdr = cmd.ExecuteReader();

while (rdr.Read()) { Console.WriteLine($" ## {rdr.GetString(1)} / {rdr.GetInt32(2)}"); } }

DB 경로를 지정해 놓으면 DB 파일이 없을 경우 자동으로 생성해 주니 궂이 따로 생성할 필요는 없다.