在.Net中設(shè)置SQLite數(shù)據(jù)庫(kù)的詳細(xì)優(yōu)點(diǎn)有哪一些?
發(fā)表時(shí)間:2023-07-16 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]總結(jié): 關(guān)于SQLite的庫(kù)安裝比較特殊: 下載地址:http://system.data.sqlite.org/index.html/doc/trunk/www/downloads...
總結(jié):
關(guān)于SQLite的庫(kù)安裝比較特殊:
下載地址:http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki --ok!
https://www.sqlite.org/download.html。---用于安卓、Mac、Linux等平臺(tái)的下載。
下載安裝包:
sqlite-netFx20-setup-bundle-x64-2005-1.0.108.0.exe ---測(cè)試ok!
或者 sqlite-netFx45-setup-bundle-x64-2012-1.0.108.0.exe 需要先卸載2.0版,再安裝。---測(cè)試ok!
(為了與其它軟件保持一致,建議安裝.Net 4.5版本的!)
默認(rèn)安裝路徑:C:\Program Files\System.Data.SQLite
.Net引用:只需引用安裝bin目錄下的,System.Data.SQLite.dll一個(gè)文件即可!
注意:
1、帶bundle的表示動(dòng)態(tài)庫(kù)是按混合模式編譯的,還有純x86和純x64模式的庫(kù),共3種,按實(shí)際需要選擇。(與項(xiàng)目的生成--目標(biāo)平臺(tái)一致才行。
2、下載的庫(kù),一定要安裝,才行。。ㄖ灰茫窗惭b,運(yùn)行會(huì)報(bào)錯(cuò)。。
3、.Net使用SQLite,只需要引用System.Data.SQLite.dll,根本用不著 sqlite3.dll。沒(méi)想到吧!
SQLite 介紹:
SQLite,是一款輕型的數(shù)據(jù)庫(kù),用于本地的數(shù)據(jù)儲(chǔ)存。開(kāi)源數(shù)據(jù)庫(kù)。
優(yōu)點(diǎn),它占用資源非常的低,在嵌入式設(shè)備中需要幾百K的內(nèi)存就夠了;作為輕量級(jí)數(shù)據(jù)庫(kù),他的處理速度也足夠快;支持的的容量級(jí)別為T(mén)級(jí);獨(dú)立: 沒(méi)有額外依賴;開(kāi)源;支持多種語(yǔ)言。
詳細(xì)優(yōu)點(diǎn):
1、它的設(shè)計(jì)目標(biāo)是嵌入式的,它占用資源非常的低,在嵌入式設(shè)備中,可能只需要幾百K的內(nèi)存就夠了。
2、跨平臺(tái)和多語(yǔ)言支持:它能夠支持Windows/Linux/Unix等等主流的操作系統(tǒng),同時(shí)能夠跟很多程序語(yǔ)言相結(jié)合,
比如C, C++, PHP, Perl, Java, C#,Python, Ruby等。
3、速度快:比起Mysql、PostgreSQL這兩款開(kāi)源的世界著名數(shù)據(jù)庫(kù)管理系統(tǒng)來(lái)講,它的處理速度比他們都快。
(比一些流行的數(shù)據(jù)庫(kù)在大部分普通數(shù)據(jù)庫(kù)操作要快。)
4、支持?jǐn)?shù)據(jù)庫(kù)大小至2TB。
5、足夠小, 大致13萬(wàn)行C代碼, 4.43M
6、簡(jiǎn)單, 輕松的API
7、源碼完全的開(kāi)源, 你可以用于任何用途, 包括出售它。
8、它還支持事務(wù)處理功能等等。
使用.NET操作SQLLITE:
示例代碼1:
public string Query() { string datasource = "e:/tmp/test.db"; System.Data.SQLite.SQLiteConnection.CreateFile(datasource); //連接數(shù)據(jù)庫(kù) System.Data.SQLite.SQLiteConnection conn = new System.Data.SQLite.SQLiteConnection(); System.Data.SQLite.SQLiteConnectionStringBuilder connstr = new System.Data.SQLite.SQLiteConnectionStringBuilder(); connstr.DataSource = datasource; connstr.Password = "admin";//設(shè)置密碼,SQLite ADO.NET實(shí)現(xiàn)了數(shù)據(jù)庫(kù)密碼保護(hù) conn.ConnectionString = connstr.ToString(); conn.Open(); //創(chuàng)建表 System.Data.SQLite.SQLiteCommand cmd = new System.Data.SQLite.SQLiteCommand(); string sql = "CREATE TABLE test(username varchar(20),password varchar(20))"; cmd.CommandText = sql; cmd.Connection = conn; cmd.ExecuteNonQuery(); //插入數(shù)據(jù) sql = "INSERT INTO test VALUES('a','b')"; cmd.CommandText = sql; cmd.ExecuteNonQuery(); //取出數(shù)據(jù) sql = "SELECT * FROM test"; cmd.CommandText = sql; System.Data.SQLite.SQLiteDataReader reader = cmd.ExecuteReader(); StringBuilder sb = new StringBuilder(); while (reader.Read()) { sb.Append("username:").Append(reader.GetString(0)).Append("\n") .Append("password:").Append(reader.GetString(1)); } //MessageBox.Show(sb.ToString());
return sb.ToString(); }
示例代碼2:事務(wù)操作:
using (SQLiteConnection conn = new SQLiteConnection(connectionString))
{
conn.Open();
SQLiteCommand cmd = new SQLiteCommand();
cmd.Connection = conn;
SQLiteTransaction tx = conn.BeginTransaction();
cmd.Transaction = tx;
try
{
for (int n = 0; n < SQLStringList.Count; n++)
{
string strsql = SQLStringList[n].ToString();
if (strsql.Trim().Length > 1)
{
cmd.CommandText = strsql;
cmd.ExecuteNonQuery();
}
}
tx.Commit();
}
catch (System.Data.SQLite.SQLiteException E)
{
tx.Rollback();
throw new Exception(E.Message);
}
相關(guān)文章:
SQLite關(guān)系型數(shù)據(jù)庫(kù)的使用
如何在.NET中使用MySQL數(shù)據(jù)庫(kù)
相關(guān)視頻:
SQLite高級(jí)課程
以上就是在.Net中操作SQLite數(shù)據(jù)庫(kù)的詳細(xì)優(yōu)點(diǎn)有哪些?的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
學(xué)習(xí)教程快速掌握從入門(mén)到精通的SQL知識(shí)。