using (var connection = new SqliteConnection("Data Source=hello.db"))
{
connection.Open();
var command = connection.CreateCommand();
command.CommandText = "SELECT name FROM sqlite_master WHERE name = 'user'";
var name = command.ExecuteScalar();
if (name == null || name.ToString() != "user")
{
command = connection.CreateCommand();
command.CommandText = "CREATE TABLE user (id INT, name VARCHAR(20))";
command.ExecuteNonQuery();
command = connection.CreateCommand();
command.CommandText = @"INSERT INTO user VALUES ($id, $name)";
command.Parameters.AddWithValue("$id", "1");
command.Parameters.AddWithValue("$name", "세종대왕");
command.ExecuteNonQuery();
}
command = connection.CreateCommand();
command.CommandText = @"INSERT INTO user VALUES ($id, $name)";
command.Parameters.AddWithValue("$id", "2");
command.Parameters.AddWithValue("$name", "홍길동");
command.ExecuteNonQuery();
command = connection.CreateCommand();
command.CommandText = @"UPDATE user SET name = $name WHERE id = $id";
command.Parameters.AddWithValue("$id", "2");
command.Parameters.AddWithValue("$name", "이순신");
command.ExecuteNonQuery();
command = connection.CreateCommand();
command.CommandText =
@"
SELECT name
FROM user
WHERE id = $id
";
command.Parameters.AddWithValue("$id", "2");
using (var reader = command.ExecuteReader())
{
while (reader.Read())
{
var name2 = reader.GetString(0);
tb_name.Text = name2;
}
}
command = connection.CreateCommand();
command.CommandText = @"DELETE FROM user WHERE ID=$id";
command.Parameters.AddWithValue("$id", "2");
command.ExecuteNonQuery();
connection.Close();
}
Sqlite를 연결하고 테이블 생성, 테이블 CRUD 소스를 실행한다.
DBeaver로 프로젝트 출력 폴더에 생성된 hello.db를 SQLite 연결로 열고, user 테이블을 확인하면 초기에 입력한 세종대왕 데이터가 보인다.