欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識庫 > C#中使用SQLite數(shù)據(jù)庫的方法介紹

C#中使用SQLite數(shù)據(jù)庫的方法介紹

熱門標簽:陜西人工外呼系統(tǒng)哪家好 山西防封卡電銷卡套餐 云南外呼電銷機器人系統(tǒng) 浙江外呼系統(tǒng)怎么安裝 廈門商鋪地圖標注 海外地圖標注門市標 上海楊浦怎么申請申請400電話 地圖標注多個行程 銅川小型外呼系統(tǒng)運營商
【SQLite管理工具簡介】
推薦以下2款:
Navicat for SQLite:功能非常強大,幾乎包含了數(shù)據(jù)庫管理工具的所有必需功能,操作簡單,容易上手。唯一的缺點是不能打開由System.Data.SQLite.dll加密過的數(shù)據(jù)庫。
Database.Net:臺灣人用.net開發(fā)的全能數(shù)據(jù)庫管理工具,可以管理多種數(shù)據(jù)庫,包括MSSQL、MYSQL、IBM DB2、Oracle、Access、Excel、OleDb、Odbc等十多種數(shù)據(jù)庫(或數(shù)據(jù)接口),功能沒有Navicat那么多,只包含最基本功能。對SQLite而言,Database.Net最大的優(yōu)點是支持打開由System.Data.SQLite.dll加密過的數(shù)據(jù)庫,且可以隨時對數(shù)據(jù)庫設置密碼,是.net下開發(fā)SQLite必備的小工具。下載地址:http://fishcodelib.com/Database.htm 腳本之家下載地址 https://www.jb51.net/database/41238.html
建議以Navicat for SQLite為主,Database.Net為輔,只要涉及到數(shù)據(jù)庫加密時才用后者。
【操作SQLite實例】
操作SQlite的方法基本同其他數(shù)據(jù)庫相同,但有一些區(qū)別:
『例1』整數(shù)似乎都是Int64的。
查詢出網(wǎng)站App_Data目錄下“省市.db”數(shù)據(jù)庫中city表的總記錄數(shù)
復制代碼 代碼如下:

SQLiteConnection cn = new SQLiteConnection("Data Source=|DataDirectory|省市.db;Version=3");
SQLiteCommand cmd = new SQLiteCommand("select count(*) from city", cn);
cn.Open();
int recordCount = (int)(Int64)cmd.ExecuteScalar();
cn.Close();
Response.Write(recordCount);

SQLite中count函數(shù)返回的是一個Int64的整數(shù),這一點同MSSQL、Access等不同。實際上,經(jīng)過有限的使用發(fā)現(xiàn),似乎所有INTEGER字段的返回值都是Int64,這一點未經(jīng)過有效證實。ExecuteScalar方法返回一個object實例,按照C#規(guī)定,拆箱時進行標準轉(zhuǎn)換,必須轉(zhuǎn)換成該object實例實際存儲的格式,因此分兩步,先轉(zhuǎn)換成Int64,再轉(zhuǎn)換成int。當然用.net中某些高級轉(zhuǎn)換器如Convert.ToInt32方法只要一步就可以了。
『例2』批量增刪改時需要用事務,否則效率很低。
批量插入1000條記錄,每條記錄只有簡單的id、name、password三個字段:
復制代碼 代碼如下:

SQLiteConnection cn = new SQLiteConnection("Data Source=c:\\測試.db3;Version=3;password=12345");
SQLiteCommand cmd = new SQLiteCommand("select count(*) from test", cn);
cn.Open();
int recordCount = (int)(Int64)cmd.ExecuteScalar();
Response.Write("當前的總記錄數(shù):" + recordCount + "br/>");
for (int i = 0; i 1000; i++)
{
cmd.CommandText = "insert into test values(@id,@name,@password)";
cmd.Parameters.AddWithValue("@id", i);
cmd.Parameters.AddWithValue("@name", "姓名" + i);
cmd.Parameters.AddWithValue("@password", (i * 2).ToString());
cmd.ExecuteNonQuery();
}
cmd.CommandText = "select count(*) from test";
recordCount = (int)(Int64)cmd.ExecuteScalar();
cn.Close();
Response.Write("當前的總記錄數(shù):" + recordCount + "br/>");

經(jīng)過測試,這段代碼中的for循環(huán)花費了70000~90000毫秒,一分鐘多!
改用事務執(zhí)行:
復制代碼 代碼如下:

SQLiteConnection cn = new SQLiteConnection("Data Source=c:\\測試.db3;Version=3;password=12345");
SQLiteCommand cmd = new SQLiteCommand("select count(*) from test", cn);
cn.Open();
int recordCount = (int)(Int64)cmd.ExecuteScalar();
Response.Write("當前的總記錄數(shù):" + recordCount + "br/>");
SQLiteTransaction tran = cn.BeginTransaction();
cmd.Transaction = tran;
try
{
for (int i = 0; i 1000; i++)
{
cmd.CommandText = "insert into test values(@id,@name,@password)";
cmd.Parameters.AddWithValue("@id", i);
cmd.Parameters.AddWithValue("@name", "姓名" + i);
cmd.Parameters.AddWithValue("@password", (i * 2).ToString());
cmd.ExecuteNonQuery();
}
tran.Commit();
}
catch
{
tran.Rollback();
Response.Write("執(zhí)行出錯!");
}
finally
{
cmd.CommandText = "select count(*) from test";
recordCount = (int)(Int64)cmd.ExecuteScalar();
cn.Close();
Response.Write("當前的總記錄數(shù):" + recordCount + "br/>");
}

經(jīng)過測試,這段代碼中的try部分只用了100~150毫秒!開啟事務后,效率非常高!
『例3』一般開發(fā)中可以編寫自己的數(shù)據(jù)庫通用操作類,進一步封裝ADO.NET。
如上面用事務操作的代碼,改用數(shù)據(jù)庫通用操作類后:
復制代碼 代碼如下:

SQLiteData md = new SQLiteData("Data Source=c:\\測試.db3;Version=3;password=12345");
int recordCount = (int)(Int64)md.ExecuteScalar("select count(*) from test");
Response.Write("當前的總記錄數(shù):" + recordCount + "br/>");
md.CreateTransaction();
try
{
for (int i = 0; i 1000; i++)
md.ExecuteNonQuery("insert into test values(@id,@name,@password)", "@id", i, "@name", "姓名" + i, "@password", (i * 2).ToString());
md.CommitTransaction();
}
catch
{
md.RollBack();
Response.Write("執(zhí)行出錯!");
}
finally
{
recordCount = (int)(Int64)md.ExecuteScalar("select count(*) from test");
md.Close();
Response.Write("當前的總記錄數(shù):" + recordCount + "br/>");
}

可以看到代碼精簡了很多。

【SQLite相關有用的鏈接地址】

SQLite官方網(wǎng)站:http://www.sqlite.org/

SQLite內(nèi)置核心函數(shù)參考文檔:http://www.sqlite.org/lang_corefunc.html

SQLite日期時間函數(shù)參考文檔:http://www.sqlite.org/lang_datefunc.html

SQLite數(shù)學函數(shù)參考文檔:http://www.sqlite.org/lang_aggfunc.html

SQLite相關SQL語法參考文檔:http://www.sqlite.org/lang.html

System.Data.SQLite.dll數(shù)據(jù)訪問驅(qū)動下載地址:http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki

您可能感興趣的文章:
  • C#操作SQLite數(shù)據(jù)庫方法小結(jié)(創(chuàng)建,連接,插入,查詢,刪除等)
  • ASP.NET(C#)中操作SQLite數(shù)據(jù)庫實例
  • c#幾種數(shù)據(jù)庫的大數(shù)據(jù)批量插入(SqlServer、Oracle、SQLite和MySql)
  • C#簡單訪問SQLite數(shù)據(jù)庫的方法(安裝,連接,查詢等)
  • C#基于SQLiteHelper類似SqlHelper類實現(xiàn)存取Sqlite數(shù)據(jù)庫的方法
  • C#操作SQLite數(shù)據(jù)庫之讀寫數(shù)據(jù)庫的方法
  • C#/.Net 中快速批量給SQLite數(shù)據(jù)庫插入測試數(shù)據(jù)
  • C#中嵌入SQLite數(shù)據(jù)庫的簡單方法
  • C#簡單查詢SQLite數(shù)據(jù)庫是否存在數(shù)據(jù)的方法
  • C# SQLite數(shù)據(jù)庫入門使用說明

標簽:信陽 自貢 許昌 西雙版納 孝感 朔州 萊蕪 常州

巨人網(wǎng)絡通訊聲明:本文標題《C#中使用SQLite數(shù)據(jù)庫的方法介紹》,本文關鍵詞  中,使用,SQLite,數(shù)據(jù)庫,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《C#中使用SQLite數(shù)據(jù)庫的方法介紹》相關的同類信息!
  • 本頁收集關于C#中使用SQLite數(shù)據(jù)庫的方法介紹的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    欧美成人一区二区| 国产一区不卡精品| 日本黄色三级网站| 色婷婷香蕉在线一区二区| 欧美激情综合在线| 国产一区二区福利视频| 免费一级特黄3大片视频| 久久久不卡影院| 国产传媒一区在线| 亚洲少妇xxx| 国产精品视频观看| 成人激情小说乱人伦| 色综合网色综合| 亚洲色图欧美激情| 99re热这里只有精品免费视频| 成熟的女同志hd| 最新日韩av在线| 91丨九色丨黑人外教| 欧美在线观看一二区| 亚洲一区影音先锋| 大乳护士喂奶hd| 欧美大片在线观看一区二区| 乱一区二区av| 色www亚洲国产阿娇yao| 国产精品视频一二| 91在线看国产| 91精品国产欧美一区二区成人| 日韩国产欧美一区二区三区| 免费看污片网站| 久久久久高清精品| 成人免费精品视频| 欧美亚洲一区二区在线| 五月天亚洲精品| 午夜时刻免费入口| 国产精品毛片高清在线完整版| thepron国产精品| 欧美日韩国产精品成人| 日本人妖一区二区| 男人晚上看的视频| 一区二区在线看| 久久久久久久久免费看无码 | 国产精品乱码一区二三区小蝌蚪| av欧美精品.com| 9191久久久久久久久久久| 美国av一区二区| 2025国产精品自拍| 午夜一区二区三区视频| 日本污视频网站| 亚洲激情校园春色| 少妇精品一区二区三区| 亚洲国产成人午夜在线一区| 久久久国产精品久久久| 欧美mv日韩mv国产网站app| 懂色av一区二区三区免费看| 欧美日韩一区中文字幕| 毛片av一区二区| 日本韩国欧美一区| 捆绑变态av一区二区三区| 我家有个日本女人| 日本中文一区二区三区| 男女性高潮免费网站| 日日夜夜精品视频免费| 久久精品亚洲a| 日本中文字幕一区二区视频 | 亚洲色图在线视频| 黄色录像a级片| 国产精品伦一区| 可以直接看的无码av| 亚洲欧洲国产专区| 亚洲做受高潮无遮挡| 亚洲三级在线观看| 亚洲av综合一区二区| 一区二区三区四区中文字幕| 无码少妇精品一区二区免费动态| 依依成人精品视频| 在线日韩国产网站| 免费亚洲电影在线| 欧美三级在线看| 国产精品77777| 欧美一区二区网站| 99久久99久久精品免费观看| 亚洲精品一区二区三区99| 国产成人av片| 中文字幕av资源一区| 日本黄色网址大全| 亚洲一区自拍偷拍| 午夜爱爱毛片xxxx视频免费看| 免费在线观看视频一区| 欧美精品在线视频| 成人av综合一区| 26uuuu精品一区二区| 人妻换人妻a片爽麻豆| ㊣最新国产の精品bt伙计久久| 欧洲美一区二区三区亚洲 | 成人免费视频网站入口::| 麻豆国产欧美日韩综合精品二区| 欧美性色综合网| 粉嫩13p一区二区三区| 国产丝袜欧美中文另类| 国产精品九九九九九| 亚洲高清三级视频| 91九色最新地址| 不卡电影免费在线播放一区| 久久久精品人体av艺术| 无码人妻精品一区二区三应用大全 | a资源在线观看| 捆绑紧缚一区二区三区视频| 91精品国产美女浴室洗澡无遮挡| 熟女人妻一区二区三区免费看| 亚洲你懂的在线视频| 中国毛片直接看| 国产黑丝在线一区二区三区| 久久影视一区二区| 伊人网在线视频观看| 五月天激情综合网| 在线播放91灌醉迷j高跟美女| 少妇丰满尤物大尺度写真| 亚洲人xxxx| 一本大道久久精品懂色aⅴ| 成人一区二区三区| 中文字幕国产精品一区二区| 成人精品一二三区| 国产一区不卡精品| 国产欧美一区二区精品性| 超薄肉色丝袜一二三| 久久草av在线| 久久日一线二线三线suv| 懂色av蜜桃av| 国产原创一区二区| 国产日产精品一区| 免费成人美女女在线观看| 国产成人精品网址| 中文字幕在线观看一区二区| 深夜福利影院在线观看| www.亚洲人| 一区二区三区日韩欧美| 欧美日韩免费电影| 国产 xxxx| 麻豆成人综合网| 国产欧美日韩不卡| 中文字幕av免费在线观看| 99九九99九九九视频精品| 一区二区三区日韩欧美| 欧美日韩精品三区| 亚洲久久久久久| 久久99热这里只有精品| 国产亚洲短视频| 全程偷拍露脸中年夫妇| 国产调教打屁股xxxx网站| 亚洲gay无套男同| 日韩女优制服丝袜电影| 色屁屁草草影院ccyy.com| 成人黄色小视频| 亚洲一区二区三区三| 欧美一区二区网站| 美女av免费看| 91女人视频在线观看| 午夜精品久久久久影视| 久久久噜噜噜久久中文字幕色伊伊| 永久免费看片直接| 日本黄色www| 免费精品99久久国产综合精品| 久久亚洲一级片| 97成人资源站| 最新版天堂资源在线| 蜜桃视频第一区免费观看| 国产欧美在线观看一区| 在线观看亚洲精品| 黄色短视频在线观看| 风间由美一区二区av101| 亚洲制服丝袜一区| 欧美精品一区二区蜜臀亚洲| 欧美三级在线免费观看| 欧洲一级黄色片| 岛国一区二区在线观看| 亚洲成av人影院在线观看网| 久久精品一区二区三区不卡| 色老头久久综合| 黄色在线观看av| 成人高清av在线| 日韩电影一区二区三区四区| 国产精品久久99| 日韩视频免费观看高清在线视频| 青草影院在线观看| 少妇精品一区二区| 成人动漫一区二区在线| 蜜臀av性久久久久蜜臀aⅴ流畅| 国产精品久久久久久久久久免费看| 欧美另类久久久品| 婷婷社区五月天| 精品夜夜澡人妻无码av | 免费在线观看一级片| 少妇按摩一区二区三区| www.日韩av| 经典三级在线一区| 亚洲一区二区三区视频在线播放| 国产日韩精品一区| 日韩你懂的在线观看| 在线观看日韩毛片| 大胸美女被爆操|