亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > 綜合 > 正文

C#調用SQlite常見問題匯總

2024-07-21 02:52:18
字體:
來源:轉載
供稿:網友

最近在做SQLite開發,開發環境是VS2010+ SQLite Ado.Net data PRovider。這套Data Provider程序是基于System.Data.SQLite 1.0.66版本,下面就總結一下開發SQLite過程中的經驗。

1.管理工具(Navicat)

sqlite的管理工具很多,我比較喜歡用Navicat。個人建議用Navicat。

2.數據庫清理(VACUUM)

當數據庫中的一個或多個數據表存在大量的插入、更新和刪除等操作時,將會有大量的磁盤空間被已刪除的數據所占用。在沒有執行VACUUM命令之前,SQLite并沒有將它們歸還于操作系統。由于該類數據表中的數據存儲非常分散,因此在查詢時,無法得到更好的批量IO讀取效果,從而影響了查詢效率。可以使用VACUUM的方法對sqlite數據庫進行清理。 VACUUM命令在完成數據清理時采用了和PostgreSQL相同的策略,即創建一個和當前數據庫文件相同大小的新數據庫文件,之后再將該數據庫文件中的數據有組織的導入到新文件中,其中已經刪除的數據塊將不會被導入,在完成導入后,收縮新數據庫文件的尺寸到適當的大小。在SQLite中,僅支持清理當前連接中的主數據庫,而不能清理其它Attached數據庫。
SQLiteConnection sqlconn = new SQLiteConnection(@"Data Source=C:/cache;Version=3;PassWord=123");sqlconn.Open();SQLiteCommand sqlCom = sqlconn.CreateCommand();sqlCom.CommandText = "VACUUM";sqlCom.ExecuteNonQuery();

3.非空類型(Nullable<long>)

 SQLite中的列映射到實體對象屬性時,默認是Nullabe型的。而Nullable型數據開發比較麻煩,為了避免這個問題,可在數據庫中將列設置為非空。

4.外鍵的Delete Cascade不起作用

產生這個問題主要有兩個原因,有可能是在edmx中cascade設置沒被創建,也有可能是程序運行時數據庫對象沒加載到內存。

使用SQLite Ado.Net data Provider的Designer工具導入*.db文件時,外鍵的Cascade信息沒能正確導入,這個可能是Provider的BUG。這時需要在edmx編輯界面手動進行修改。在*.edmx窗口選擇連接線,在Property窗口手動修改End1 OnDelete屬性為Cascade。就算在edmx中設置正確,還是會發現cascade有時生效,有時不生效。這時因為如果*.db庫中的數據如果沒加載進內存,cascade就不生效。因此,如果希望cascade生效,還要將關聯的表手動加載(有點像Hibernate的懶加載機制)。這時t1表中的一行刪除時,t11表中的相關數據才會跟著被刪除,代碼如下。但是這樣也造成了SQLite性能的下降,具體還要根據業務需求來進行取舍。
if(!t1.t11.IsLoaded)    t1.t11.Load();

5.程序部署報錯

因為SQLite Ado.Net data Provider會將常用dll注冊到GAC,所以在本機運行時一般不會有問題,但是部署到別的機器就會報錯。這時需要做三個操作:

拷貝引用庫。將System.Data.SQLite.dll、System.Data.SQLite.Linq.dll等幾個相關dll拷貝到應用程序目錄下。在*.exe.config中,將connection stirng從絕對路徑改為相對路徑。在*.exe.config中,添加引用配置信息。復制代碼
<?xml version="1.0" encoding="utf-8"?><configuration>  <system.data>    <DbProviderFactories>      <remove invariant="System.Data.SQLite"/>      <add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".Net Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite" />    </DbProviderFactories>  </system.data>  <connectionStrings>    <add name="DTMEntities" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SQLite;provider connection string=&quot;data source=DTM.db&quot;" providerName="System.Data.EntityClient" />  </connectionStrings></configuration>
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美电影电视剧在线观看| 亚洲最大的免费| 亚洲欧美国产高清va在线播| 国产欧美va欧美va香蕉在线| 亚洲人午夜色婷婷| 国产精品久久久久久av下载红粉| 国产一区二区三区在线观看视频| 亚洲裸体xxxx| 日韩hd视频在线观看| 国产91精品久久久久久| 国产一区av在线| 中文字幕免费精品一区| 亚洲自拍偷拍色图| 国产日韩精品在线播放| 久久国产精品99国产精| www.日韩av.com| 久久精品99国产精品酒店日本| 久久手机免费视频| 欧美激情一区二区久久久| 国产精品自在线| 秋霞午夜一区二区| 国产精品一二三视频| 78m国产成人精品视频| 国产精品黄视频| 国产欧美日韩免费| 日韩av一卡二卡| 久久精品国产96久久久香蕉| 国产精品欧美日韩久久| 国产精品毛片a∨一区二区三区|国| 亚洲女成人图区| 日韩精品极品毛片系列视频| 欧美极品少妇xxxxⅹ免费视频| 欧美激情视频播放| 欧美性理论片在线观看片免费| 亲爱的老师9免费观看全集电视剧| 国产区精品视频| 亚洲国产精品人久久电影| 欧美性猛交xxxx久久久| 成人观看高清在线观看免费| 91精品国产综合久久男男| 在线播放国产一区二区三区| 欧美激情网友自拍| 久久在精品线影院精品国产| 欧美—级高清免费播放| 视频一区视频二区国产精品| 国内精久久久久久久久久人| 亚洲成年网站在线观看| 欧美一区二区影院| 欧美在线观看网址综合| 欧美精品videofree1080p| 91国产视频在线播放| 日韩在线观看你懂的| 欧美亚洲国产成人精品| 日韩av中文在线| 在线观看亚洲区| 欧美性高潮在线| 欧美日韩亚洲视频一区| 精品久久久久久久久国产字幕| 亚洲系列中文字幕| 亚洲视频在线免费看| 欧美激情综合色综合啪啪五月| 欧美另类极品videosbestfree| 日韩电影视频免费| 亚洲自拍偷拍第一页| www.日本久久久久com.| 免费91在线视频| 91在线观看免费高清完整版在线观看| 搡老女人一区二区三区视频tv| 97在线免费视频| www.亚洲人.com| 亚洲国产一区二区三区四区| 欧美福利小视频| 国产精品一区二区三区久久| 91chinesevideo永久地址| 成人久久18免费网站图片| 国产亚洲精品久久久久久| 精品少妇一区二区30p| 日韩av一区二区在线观看| 国产精品久久久久久中文字| 日韩有码片在线观看| 欧美激情一区二区三级高清视频| 国产视频久久久| 亚洲精品视频免费| 欧美成人午夜免费视在线看片| 热久久美女精品天天吊色| 久久中文字幕在线| 久久久成人的性感天堂| 日本高清不卡的在线| 亚洲天堂av在线免费观看| 一区二区三区视频免费在线观看| 57pao国产精品一区| 精品香蕉在线观看视频一| 亚洲成人黄色在线| 中文字幕久久久av一区| xxav国产精品美女主播| 日韩精品高清在线| 欧美激情视频一区| 日韩成人在线视频网站| 国产成人鲁鲁免费视频a| 美女福利视频一区| 精品国产拍在线观看| 日韩国产精品亚洲а∨天堂免| 91精品国产综合久久久久久久久| 欧美成人四级hd版| 欧美有码在线观看视频| 在线观看日韩www视频免费| 日韩中文字幕视频在线| 国产精品视频色| 日韩精品高清视频| 日韩av免费看网站| 亚洲欧美日韩网| 国产成人精品一区二区三区| 91中文精品字幕在线视频| 国产欧美一区二区三区久久人妖| 91精品视频在线播放| 欧美日韩一区二区在线| www亚洲精品| 亚洲伊人成综合成人网| 亚洲欧美另类在线观看| 亚洲人精品午夜在线观看| 日韩电影在线观看永久视频免费网站| 欧洲亚洲免费视频| 欧美肥老太性生活视频| 国产精品久久久久一区二区| 78m国产成人精品视频| 日本一区二区在线免费播放| 日韩精品免费在线播放| 97久久久免费福利网址| 亚洲天堂成人在线视频| 久久精视频免费在线久久完整在线看| 欧美性猛交xxxx免费看漫画| 国产欧亚日韩视频| 欧美大片免费观看| 97精品国产97久久久久久春色| 97视频免费看| 久久亚洲影音av资源网| 欧美成年人在线观看| 欧美成人一区在线| 亚洲一区二区久久久久久| 91网站在线免费观看| 国产精品美女呻吟| 精品视频在线观看日韩| 欧美性猛交xxxx乱大交蜜桃| 国产精品第三页| 欧美网站在线观看| 欧美日韩国产丝袜美女| 亚洲国产精品高清久久久| 国产中文字幕91| 5252色成人免费视频| 国产精品盗摄久久久| 亚洲无线码在线一区观看| 精品久久久久久久久久国产| 欧美成人亚洲成人| 亚洲综合社区网| 国内精品久久久久久影视8| 国产中文欧美精品| 欧美综合激情网| 久久影院中文字幕| 日韩麻豆第一页| 中文字幕精品一区二区精品| 欧美一级高清免费| 国产欧美一区二区三区久久| 欧美日韩国产精品专区| 亚洲天堂免费观看|