关于SQLite的库装置比较特别:
下载地点:http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki --ok!
https://www.sqlite.org/download.html。---用于安卓、Mac、Linux等平台的下载。
下载装置包:
sqlite-netFx20-setup-bundle-x64-2005-1.0.108.0.exe ---测试ok!
或许 sqlite-netFx45-setup-bundle-x64-2012-1.0.108.0.exe 须要先卸载2.0版,再装置。---测试ok!
(为了与别的软件保持一致,发起装置.Net 4.5版本的!)
默许装置途径:C:\Program Files\System.Data.SQLite
.Net援用:只需援用装置bin目录下的,System.Data.SQLite.dll一个文件即可!
注重:
1、带bundle的示意动态库是按夹杂形式编译的,另有纯x86和纯x64形式的库,共3种,按实际须要挑选。(与项目的生成--目的平台一致才行!)
2、下载的库,一定要装置,才行!!(只援用,未装置,运转会报错!!)
3、.Net运用SQLite,只须要援用System.Data.SQLite.dll,基础用不着 sqlite3.dll。没想到吧!
SQLite 引见:
SQLite,是一款轻型的数据库,用于当地的数据贮存。开源数据库。
长处,它占用资本异常的低,在嵌入式装备中须要几百K的内存就够了;作为轻量级数据库,他的处置惩罚速率也充足快;支撑的的容量级别为T级;自力: 没有分外依靠;开源;支撑多种语言。
细致长处:
1、它的设想目的是嵌入式的,它占用资本异常的低,在嵌入式装备中,能够只须要几百K的内存就够了。
2、跨平台和多语言支撑:它能够支撑Windows/Linux/Unix等等主流的操纵体系,同时能够跟许多程序语言相结合,
比方C, C++, PHP, Perl, Java, C#,Python, Ruby等。
3、速率快:比起Mysql、PostgreSQL这两款开源的天下有名数据库治理体系来说,它的处置惩罚速率比他们都快。
(比一些盛行的数据库在大部分一般数据库操纵要快。)
4、支撑数据库大小至2TB。
5、充足小, 大抵13万行C代码, 4.43M
6、简朴, 轻松的API
7、源码完整的开源, 你能够用于任何用处, 包含出卖它。
8、它还支撑事件处置惩罚功用等等。
运用.NET操纵SQLLITE:
示例代码1:
public string Query() { string datasource = "e:/tmp/test.db"; System.Data.SQLite.SQLiteConnection.CreateFile(datasource); //衔接数据库 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";//设置暗码,SQLite ADO.NET完成了数据库暗码保护 conn.ConnectionString = connstr.ToString(); conn.Open(); //建立表 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(); //插进去数据 sql = "INSERT INTO test VALUES('a','b')"; cmd.CommandText = sql; cmd.ExecuteNonQuery(); //掏出数据 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:事件操纵:
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); }
相干文章:
SQLite关联型数据库的运用
如安在.NET中运用MySQL数据库
相干视频:
SQLite高等课程
以上就是在.Net中操纵SQLite数据库的细致长处有哪些?的细致内容,更多请关注ki4网别的相干文章!