在.Net中操作SQLite數(shù)據(jù)庫(kù)有什么優(yōu)點(diǎn)

這篇文章將為大家詳細(xì)講解有關(guān)在.Net中操作SQLite數(shù)據(jù)庫(kù)有什么優(yōu)點(diǎn),小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

創(chuàng)新互聯(lián)公司專(zhuān)注于奈曼企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站建設(shè),購(gòu)物商城網(wǎng)站建設(shè)。奈曼網(wǎng)站建設(shè)公司,為奈曼等地區(qū)提供建站服務(wù)。全流程按需求定制設(shè)計(jì),專(zhuān)業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)公司專(zhuān)業(yè)和態(tài)度為您提供的服務(wù)

總結(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)一致才行?。?/p>

2、下載的庫(kù),一定要安裝,才行!?。ㄖ灰?,未安裝,運(yùn)行會(huì)報(bào)錯(cuò)?。。?/p>

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)于“在.Net中操作SQLite數(shù)據(jù)庫(kù)有什么優(yōu)點(diǎn)”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

網(wǎng)站名稱(chēng):在.Net中操作SQLite數(shù)據(jù)庫(kù)有什么優(yōu)點(diǎn)
文章地址:http://muchs.cn/article28/johjjp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護(hù)用戶體驗(yàn)ChatGPT、電子商務(wù)、移動(dòng)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司