C 內嵌資料庫 SQLite

2021-06-04 20:37:15 字數 3221 閱讀 5930

最近,看到乙個軟體,軟體是使用的內嵌資料庫。我對這個東西沒有實踐過,今天突然想親手做一做!。關於sqlite的資料我就不多說了,網上都有。我自己也整理了一部分,基本上可以對sqlite有個全面的了解了。我這裡就不廢話了,直接上我自己的**。

tp:

2:開啟vs2008,新建乙個winform應用程式

3: 開啟「伺服器資源管理器」 在這裡右擊「資料連線」---->新增連線   ------》更改  -----》更改資料來源為:「sqllite database file「----->確定 ---->browse選擇你的資料庫,(注意選擇的檔案一定是以後綴「.db」結束的,如果你還沒建庫,那麼你就隨便建乙個以後綴為"db"結束的檔案,放到你專案的bin目錄的debug中(很重要,程式發布的路徑))

我從網上當的乙個sqlite helper 根本就用不成,經過我的修補終於可以用了。

using system;

using system.collections.generic;

using system.text;

using system.web;

using system.configuration;

using system.data;

using system.data.sqlite;

namespace dal

private static void preparecommand(sqlitecommand cmd, sqliteconnection conn, string cmdtext, params object p)

cmd.parameters.clear();

cmd.connection = conn;

cmd.commandtext = cmdtext;

cmd.commandtype = commandtype.text;

cmd.commandtimeout = 30;

if (p != null)}}

public static dataset executedataset(string cmdtext, params object p)

return ds;

}public static datarow executedatarow(string cmdtext, params object p)

/// /// 返回受影響的行數

///

/// a

/// 傳入的引數

///

public static int executenonquery(string cmdtext, params object p)

}/// /// 返回sqldatareader物件

///

///

/// 傳入的引數

///

public static sqlitedatareader executereader(string cmdtext, params object p)

catch

}/// /// 返回結果集中的第一行第一列,忽略其他行或列

///

///

/// 傳入的引數

///

public static object executescalar(string cmdtext, params object p)

}/// /// 分頁

///

///

///

///

///

///

///

///

public static dataset executepager(ref int recordcount, int pageindex, int pagesize, string cmdtext, string counttext, params object p)

return ds;

}/**/

/// /// 放回乙個sqliteparameter

///

/// 引數名字

/// 引數型別

/// 引數大小

/// 引數值

/// sqliteparameter的值

public static sqliteparameter createsqliteparameter(string name, dbtype type, int size, object value)}}

winform的測試介面和**如下。

using system;

using system.collections.generic;

using system.componentmodel;

using system.data;

using system.drawing;

using system.linq;

using system.text;

using system.windows.forms;

using system.data.sqlite;

namespace sqlitetest

private void button2_click(object sender, eventargs e)

;dal.sqlitehelper.executenonquery(sqlstr, canshu);

bangding();

}public void bangding()

;string sqlstr = "select * from users";

this.datagridview1.datasource = dal.sqlitehelper.executedataset(sqlstr, canshu1).tables[0];}}

}

專案檔案

沒有做效能測試,應該問題不大。 緊緊做入門,儲存下來以便自己日後會用到。

C 訪問SQLite資料庫

a.解壓後copy c sqlite 3 5 0 b.進入cmd模式,進入sqlite 3 5 0目錄,執行sqlite3 mytest.db c.create table mytable1 seq int,desc varchar 8 insert into mytable1 values 1,p...

C 操作SQLite資料庫

在使用c 操作sqlite之前,需要獲得sqlite3.h,sqlite3.lib,sqlite3.dll,大家可以在 這裡 int sqlite3 open char path,sqlite3 db 這個函式開啟資料庫,第乙個引數為sqlite檔案的位址,第二個引數是sqlite3的指標的指標,也...

c 操作Sqlite資料庫

宣告變數 system.data.sqlite.sqlitecommand cmd new system.data.sqlite.sqlitecommand system.data.sqlite.sqliteconnection conn null string sql string value i...