準(zhǔn)備環(huán)境
Assets下新建Plugins文件夾,需要放入三個(gè)程序集:
- Mono.Data.Sqlite.dll
- System.Data.dll
- sqlite3.dll
前兩個(gè)通過(guò)Unity安裝目錄下:
Unity\Editor\Data\MonoBleedingEdge\lib\mono\對(duì)應(yīng).net版本
拷貝Mono.Data.Sqlite.dll,System.Data.dll文件到Plugins:
第三個(gè)dll,進(jìn)入sqlite下載地址【傳送門(mén)】
找到 Precompiled Binaries for Windows
下載對(duì)應(yīng)位數(shù)的zip包,解壓后,拷貝sqlite3.dll到Plugins
相關(guān)函數(shù)
// db文件地址
public static string dbPath = "data source = " + Application.dataPath + "test.db";
// 建立連接
SqliteConnection connection = new SqliteConnection(dbPath);
connection.Open();
// 實(shí)例化一個(gè)Command
SqliteConnection command = connection.CreateCommand();
// 賦值sql語(yǔ)句
command.CommandText = "select * from data_role";
// 執(zhí)行讀取數(shù)據(jù)
SqliteDataReader reader = command.ExecuteReader();
while (reader.Read()) {
var id = reader.GetInt32(reader.GetOrdinal("id"));
var name = reader.GetString(reader.GetOrdinal("name"));
var power = reader.GetFloat(reader.GetOrdinal("power"));
var desc = reader.GetString(reader.GetOrdinal("desc"));
Debug.Log(string.Format("id = {0}, name = {1}, power = {2}, desc = {3}", id, name, power, desc));
}
// 關(guān)閉數(shù)據(jù)庫(kù)
reader.Close();
command.Cancel();
connection.Close();

對(duì)應(yīng)表格

執(zhí)行結(jié)果
各平臺(tái)下數(shù)據(jù)庫(kù)存儲(chǔ)路徑:
- PC,iOS,Mac:"data source = " + Application.dataPath + "test.db";
- Android:"URI = file:" + Application.dataPath + "test.db";