【資料庫】通過專案再學習sqlite
阿新 • • 發佈:2019-02-06
引言
最近在做番茄軟體的開發,由於是本地儲存資料庫選擇的是輕量級的sqlite資料庫。之前在學習三層架構的時候接觸過sqlite,但是也僅限於簡單的應用。而在這次的開發過程中對於sqlite的認識更深了
基本增刪改查語法
1、select column from table_name where condition
2、update table_name set column=value where condition
3、insert into table_name(column) values(value)
4、delete from table_name where condition
在專案中的應用
按以往來說是要用伺服器上的資料庫,所有人只要用到這個系統就會訪問伺服器上的資料庫。但此次專案的釋出是沒有資料庫的,需要先檢測本地是否有資料庫,如果沒有的話需要先建立,檢測表也是同理,這些過程都是需要用程式碼去實現的。具體程式碼如下:
/// /// 檢測plan表是否存在,如果不存在就建立 /// 如果存在,判斷t_plan表是否存在,不存在建立 /// public void CreatePlan() { string dbPath = "sql.db"; //如果不存在該資料庫檔案,否則建立該資料庫檔案 if (!System.IO.File.Exists(dbPath)) { SqliteHelper.CreateDB("sql.db"); } SqliteHelper.SQLiteDBHelper("sql.db"); //判斷t_plan表是否存在 string table = "select name from sqlite_master where type='table' and name='t_plan'"; if (table == null) { string sql = "create table t_plan(id integer NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,planName varchar(20),flag int(5))"; SqliteHelper.ExecuteNoQuery(sql, null); } else { return; } } private static string connectionString = string.Empty; /// /// 建構函式 /// /// SQLite資料庫檔案路徑 public static void SQLiteDBHelper(string dbPath) { //預設建立地址為解決方案的debug資料夾 connectionString = "Data Source=" + dbPath; } /// /// 建立SQLite資料庫檔案 /// /// 要建立的SQLite資料庫檔案路徑 public static void CreateDB(string dbPath) { using (SQLiteConnection connection = new SQLiteConnection("Data Source=" + dbPath)) { connection.Open(); using (SQLiteCommand command = new SQLiteCommand(connection)) { command.CommandText = "CREATE TABLE sql(id integer NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE)"; command.ExecuteNonQuery(); command.CommandText = "DROP TABLE sql"; command.ExecuteNonQuery(); } } }
結語
深入瞭解之後發現一個小小的資料庫竟然有這麼大的功能,而大型的資料庫並不一定有這種功能。sqlite作為一種輕量型資料庫,用於本地儲存十分方便。