在.NET C#中使用sqlite2008-01-28 14:53
2008-03-25 21:44
281 查看
在.NET C#中使用sqlite
2008-01-28 14:53
2008-01-28 14:53
1。从www.sqlite.org下载SQLite 3.3.4的版本 为了方便,我把它解压了,就一个SQLite3.exe,放入Windows目录下。 Cmd 进入命令行 1) 创建数据库文件: >SQLite3 d:/test.db 回车 就生成了一个test.db在d盘。 这样同时也SQLite3挂上了这个test.db 2) 用.help可以看看有什么命令 >.help 回车即可 3)可以在这里直接输入SQL语句创建表格 用;结束,然后回车就可以看到了 4)看看有创建了多少表 >.tables 5)看表结构 >.schema 表名 6)看看目前挂的数据库 >.database 7)如果要把查询输出到文件 >.output 文件名 > 查询语句; 查询结果就输出到了文件c:/query.txt 把查询结果用屏幕输出 >.output stdout 8)把表结构输出,同时索引也会输出 .dump 表名 9)退出 >.exit 或者.quit 2。从http://sqlite.phxsoftware.com/下载Ado.net驱动。 下载了安装,在安装目录中存在System.Data.SQLite.dll 我们只需要拷贝这个文件到引用目录,并添加引用即可对SQLite数据库操作了 所有的Ado.net对象都是以SQLite开头的,比如SQLiteConnection 连接串只需要如下方式 Data Source=d:/test.db 或者DataSource=test.db--应用在和应用程序或者.net能够自动找到的目录 剩下的就很简单了~~ 3。SQL语法 由于以前用SQLServer或者ISeries,所以DDL的语法很汗颜 1)创建一个单个Primary Key的table CREATE TABLE [Admin] ( [UserName] [nvarchar] (20) PRIMARY KEY NOT NULL , [Password] [nvarchar] (50) NOT NULL , [Rank] [smallint] NOT NULL , [MailServer] [nvarchar] (50) NOT NULL , [MailUser] [nvarchar] (50) NOT NULL , [MailPassword] [nvarchar] (50) NOT NULL , [Mail] [nvarchar] (50) NOT NULL ) ; 2)创建一个多个Primary Key的table CREATE TABLE [CodeDetail] ( [CdType] [nvarchar] (10) NOT NULL , [CdCode] [nvarchar] (20) NOT NULL , [CdString1] [ntext] NOT NULL , [CdString2] [ntext] NOT NULL , [CdString3] [ntext] NOT NULL, PRIMARY KEY (CdType,CdCode) ) ; 3)创建索引 CREATE INDEX [IX_Account] ON [Account]([IsCheck], [UserName]); 还可以视图等等。 4.还有很有用的SQL Select * from Sqlite_master Select datetime('now') Select date('now') Select time('now') 以及很多函数,具体可以参考SQLite的wiki. oh,还有就是看到有人说,好像成批插入的时候,启动事务,比不启动事务快n倍 还有就是尽量使用参数化的SQL,估计和商用DB一样能够自动Prepare. =========== sqlite可以在shell/dos command底下直接执行命令: sqlite3 film.db "select * from film;" 输出 HTML 表格: sqlite3 -html film.db "select * from film;" 将数据库「倒出来」: sqlite3 film.db ".dump" > output.sql 利用输出的资料,建立一个一模一样的数据库(加上以上指令,就是标准的SQL数据库备份了): sqlite3 film.db < output.sql 在大量插入资料时,你可能会需要先打这个指令: begin; 插入完资料后要记得打这个指令,资料才会写进数据库中: commit; ; ------------------------------------ System.Data.Sqlite入手。。。 首先import/using: 代码 using System.Data.SQLite; Connection和Command: 代码 private SQLiteConnection conn; private SQLiteCommand cmd; 连接db: 代码 conn = new SQLiteConnection("Data Source=c://test.db"); conn.Open(); INSERT/UPDATE: 代码 cmd = conn.CreateCommand(); cmd.CommandText = "INSERT INTO user(email,name) VALUES ('email','name')"; cmd.ExecuteNonQuery(); cmd.CommandText = "UPDATE userSET name = 'Codelicious' WHERE ID = 1"; cmd.ExecuteNonQuery(); SELECT: 代码 cmd.CommandText = "SELECT ID, name FROM user"; SQLiteDataReader reader = cmd.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { |
相关文章推荐
- 如何高效使用SQLite事务 .net (C#)
- 在.NET C#中使用sqlite
- 在.NET C#中使用sqlite
- 在.NET C#中使用sqlite
- 利用SQLite ADO.NET在.NET(C#)中使用SQLite数据库
- 在C#中使用.NET SDK创建控制
- C#编程技巧集之--使用C#轻松编写.Net组件
- c#中使用轻量级数据库sqlite开发总结
- .NET(C#):线程安全集合的阻塞BlockingCollection的使用
- 利用SQLite ADO.NET在.NET(C#)中使用SQLite数据库
- SQLite3 与 NHibernate 在 .NET 程序中使用
- [.Net码农]C#动态创建和动态使用程序集、类、方法、字段等(二)
- 如何使用NET Reactor为您的.Net(C#,VB.Net) 源代码加密!
- 使用C#轻松编写.Net组件(2)
- [C#技术] .NET平台开源JSON库LitJSON的使用方法
- C#使用SQLite出错:无法加载 DLL“SQLite.Interop.dll”,找不到指定的模块
- SQLite3简介及在.Net程序中的使用
- 【C#MVC】.NET中的IOC--Autofac简单使用
- 利用SQLite ADO.NET在.NET(C#)中使用SQLite数据库
- [C#技术] .NET平台开源JSON库LitJSON的使用方法