日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > C# >内容正文

C#

使用C#创建SQLite控制台应用程序

發(fā)布時(shí)間:2025/5/22 C# 60 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用C#创建SQLite控制台应用程序 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本文屬于原創(chuàng),轉(zhuǎn)載請(qǐng)注明出處,謝謝!

一、開(kāi)發(fā)環(huán)境

操作系統(tǒng):Windows 10 X64

開(kāi)發(fā)環(huán)境:VS2015

編程語(yǔ)言:C#

.NET版本:.NET Framework 4.0

目標(biāo)平臺(tái):X86

二、前言

之前使用的是軟件的Access來(lái)創(chuàng)建基于本地的數(shù)據(jù)庫(kù)軟件,發(fā)現(xiàn)在使用過(guò)程中,發(fā)現(xiàn)Access比較耗內(nèi)存,運(yùn)行速度比SQLite稍微慢,另外一個(gè)最重要的是Access加密的文件容易被破解,因此,現(xiàn)在轉(zhuǎn)向使用SQLite來(lái)代替Access。

三、SQLite的下載

1、由于是基于.NET的C#編程,需下載System.Data.SQLite.dll來(lái)進(jìn)行引用,下載網(wǎng)址如下:

http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki

2、由于使用的是.NET Framework 4.0,且軟件開(kāi)發(fā)的目標(biāo)平臺(tái)是X86,因此需下載 sqlite-netFx40-setup-x86-2010-1.0.105.2.exe 軟件,下載網(wǎng)址如下:

http://system.data.sqlite.org/downloads/1.0.105.2/sqlite-netFx40-setup-x86-2010-1.0.105.2.exe

另外,還有一個(gè) sqlite-netFx40-setup-bundle-x86-2010-1.0.105.2.exe,它與 sqlite-netFx40-setup-x86-2010-1.0.105.2.exe 的區(qū)別是,它含有VS2010的運(yùn)行時(shí)組件,因使用的VS2015,所有安裝該帶有bundle的軟件實(shí)際沒(méi)有什么用處,如果你使用的是VS2010,則可以進(jìn)行下載安裝,下載網(wǎng)址如下:

http://system.data.sqlite.org/downloads/1.0.105.2/sqlite-netFx40-setup-bundle-x86-2010-1.0.105.2.exe

3、下載的是Setup安裝包,因此只需按照點(diǎn)擊下一步(Next)或安裝(Install),直至安裝完畢即可。

四、創(chuàng)建加密版本的SQLite數(shù)據(jù)庫(kù)

在此使用的SQLite數(shù)據(jù)庫(kù)管理軟件為SQLite Studio,版本為3.1.1,下載網(wǎng)址如下:

https://sqlitestudio.pl/files/sqlitestudio3/complete/win32/sqlitestudio-3.1.1.zip

有人會(huì)問(wèn),怎么不使用Navicat For SQLite,這個(gè)軟件不僅有完全的中文版本,而且還有詳細(xì)使用說(shuō)明,不是更好嗎?

其實(shí),當(dāng)初也想用這個(gè)軟件來(lái)對(duì)SQLite數(shù)據(jù)庫(kù)進(jìn)行管理,但在創(chuàng)建加密版本的SQLite數(shù)據(jù)庫(kù)時(shí),發(fā)現(xiàn)使用System.Data.SQLite.dll來(lái)對(duì)該數(shù)據(jù)庫(kù)操作時(shí),會(huì)彈出類似數(shù)據(jù)庫(kù)文件被加密或者不是數(shù)據(jù)庫(kù)文件的提示,而非加密版本的就沒(méi)有此問(wèn)題,因此,可以使用Navicat For SQLite來(lái)對(duì)非加密的SQLite數(shù)據(jù)操作,但如果需要使用加密的SQLite數(shù)據(jù)庫(kù),推薦使用SQLite Studio,因?yàn)樗傻募用馨姹維QLite數(shù)據(jù)庫(kù)可以被System.Data.SQLite.dll識(shí)別。

關(guān)于為何不能使用Navicat For SQLite來(lái)對(duì)加密數(shù)據(jù)庫(kù)記性操作的原因是:Navicat使用的加密算法與SQLite Studio的不一樣。

1、打開(kāi)SQLite Studio,點(diǎn)擊“添加數(shù)據(jù)庫(kù)”按鈕,如下圖所示:

2、數(shù)據(jù)類型選擇“System.Data.SQLite”,點(diǎn)擊綠色添加按鈕,將文件保存至D:\Test.db,并在Password一欄內(nèi)輸入密碼:2017(如不使用密碼,此處留空即可),然后點(diǎn)擊“OK”按鈕即可創(chuàng)建一個(gè)加密版本的SQLite DB文件,如下圖所示:

3、雙擊“Test”數(shù)據(jù)庫(kù),將會(huì)顯示其下的子節(jié)點(diǎn),選擇“Tables”,并在工具欄點(diǎn)擊“新建表”按鈕,如下圖所示:

4、在Table name文本框內(nèi)輸入表名Info,并點(diǎn)擊“Add columns(Ins)”圖標(biāo)以便添加列,如下圖所示:

5、添加第一個(gè)字段,字段名為ID,數(shù)據(jù)類型為Text,將主鍵前的復(fù)選框打鉤,并點(diǎn)擊“OK”按鈕,如下圖所示:

6、重復(fù)第4個(gè)步驟,點(diǎn)擊“Add columns(Ins)”圖標(biāo)以便添加另外一個(gè)列,字段名為Name,數(shù)據(jù)類型為Text,將非空前的復(fù)選框打鉤,并點(diǎn)擊“OK”按鈕,如下圖所示:

7、點(diǎn)擊“Commit structure changes”圖標(biāo)以便保存該表及字段,如下圖所示:

8、在彈出的對(duì)話框點(diǎn)擊“OK”按鈕,即可完成表單的創(chuàng)建工作,如下圖所示:

9、選擇“數(shù)據(jù)”選項(xiàng)卡,點(diǎn)擊“插入行(Ins)”圖標(biāo)按鈕,如下所示:

10、在行數(shù)據(jù)編輯欄里輸入兩條數(shù)據(jù),第一條數(shù)據(jù)ID為2017、Name為L(zhǎng)SB,第二條數(shù)據(jù)ID為2011、Name為CNC,如下圖所示:

11、添加數(shù)據(jù)完畢之后,點(diǎn)擊“提交(Ctrl+Return)”圖標(biāo)按鈕提交剛才輸入的兩條數(shù)據(jù),如下圖所示:

12、關(guān)閉SQLite Studio數(shù)據(jù)庫(kù)管理軟件。

五、使用System.Data.SQLite.dll訪問(wèn)SQLite數(shù)據(jù)庫(kù)

1、新建一個(gè)項(xiàng)目名為“SQLiteTest”的控制臺(tái)應(yīng)用程序,如下圖所示:

2、在“SQLiteTest”項(xiàng)目中右鍵點(diǎn)擊“引用”,在彈出的上下文菜單中選擇“添加引用(R)”,如下圖所示:

3、將路徑為“C:\Program Files (x86)\System.Data.SQLite\2010\GAC\System.Data.SQLite.dll”的引用添加進(jìn)來(lái),如下圖所示:

4、在項(xiàng)目屬性設(shè)置中,將“生成”選項(xiàng)卡中的目標(biāo)平臺(tái)改為“X86”,否則,軟件無(wú)法運(yùn)行,原因是使用的是X86版本的System.Data.SQLite.dll,如下圖所示:

?

5、在Main主函數(shù)里輸入以下代碼,如下:

using System; using System.Data.SQLite; using System.Data;namespace SQLiteTest {class Program{static void Main(string[] args){using (SQLiteConnection connection = new SQLiteConnection(@"Data Source = D:\test.db;Password = 2017")){using (SQLiteCommand command = new SQLiteCommand(connection){ CommandText = "SELECT * FROM [main].[Info]" }){DataTable table = new DataTable("Info");SQLiteDataAdapter adapter = new SQLiteDataAdapter(command);adapter.Fill(table);foreach(DataRow row in table.Rows){foreach(DataColumn col in table.Columns){Console.Write($"{row[col]}\t");}Console.WriteLine();}}}Console.ReadKey();}} }

6、運(yùn)行結(jié)果如下:

?

附源代碼:

https://pan.baidu.com/s/1bpeXXvx

轉(zhuǎn)載于:https://www.cnblogs.com/cncc/p/7158126.html

總結(jié)

以上是生活随笔為你收集整理的使用C#创建SQLite控制台应用程序的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。