您的位置:首页 > 数据库

windows安装使用SQLlite并在C#调用SQLlite开发

2012-12-30 17:00 621 查看
首先安装 Sqlite 必须要先有安装文件,因为Sqlite 是一个开源的数据库,你们可以自己去编译,我比较懒,用别人编译好的。按照下面的步骤安装就行。都是英文的网站,大家注意点哦,别下载错了。

1、安装SQLite数据库

  1).打开浏览器进入SQLite主页,www.sqlite.org

  2).单击页面顶部的下载链接(Download)选项,进入下载页面。

  3).滚动鼠标到“Precompiled Binaries for Windows”,选择sqlite-shell-win32-x86-3071401.zip(第一项),点击下载,(你们下载对应的版本,我的是win7我下载的是64位的)

  4).使用解压工具,将其解压。zip文件中包含一个sqlite3.exe文件,可以从解压文件所在位置使用sqlite;如果你想从任何目录下运行CLP,需要将该文件复制到Windows系统路径下。默认情况下,Windows中工作的路径是根分区下的(C:\Windwos\System32)。(注意:我下载到的是sqlite3所以下面在cmd输入的命令就是sqlite3)

  5).打开运行窗口,输入CMD,调出Windows命令行窗口。直接在里面输入 sqlite3

  6).在命令行窗口输入sqlite3并按回车,将出现SQLite命令行提示符。当SQLite命令行提示符出现时,输入.help,将出现一列类似相关命令的说明。输入.exit后退出程序。

如图 :


如果出现如上图所示,说明你已经安装成功了。

以上步骤都通过说明已经安装完成了,不过有点不爽的是这个安装完成之后是dos命令运行,实在很不爽, 不过有一个图形界面,我个人感觉比较好,就一起分享给大家。

2、可视化的SQLite数据库管理工具

管理SQLite数据库除命令行外,网络上还有很多开源的可视化的SQLite数据库管理工具,登陆https://sourceforge.net/或者通过其他搜索引擎(GOOOGLE/BAIDU),输入【SQLite】可以找到一大片相关工具,比如,SQLite Database Browser、SQLite Administrator... 等等。试用了几个,比较而言,个人比较喜欢SQLite Administrator,该工具界面支持简体中文、界面比较简洁、数据库相关管理操作相对比较简便,该工具可以登陆http://sqliteadmin.orbmu2k.de/下载,以下是该工具的一个截图。



3、在Visual studio 2010下使用SQLite数据库

登陆http://sqlite.phxsoftware.com/下载最新版的ADO.NET 4.0 Provider for SQLite,下载解压缩后为一个安装包。点击安装后,可在安装目录下发现System.Data.SQLite.dll文件,同时在安装过程中该DLL文件也会自动注册到Visual studio 2010,可为开发环境引用(见图)。



简单一点也可以吧这个dll放到项目中就行。

在Visual studio 2010选择C#语言,建立新的项目SQLiteView,主界面参见下面的截图。该项目实现了对SQLite数据库的数据表的数据记录的浏览、新增、修改和删除操作功能。



数据库访问类DataAccess的代码:

using System;
using System.Data;
using System.Data.SQLite;

namespace SQLiteView
{
class DataAccess
{
SQLiteConnection con ;
SQLiteCommand command;
public DataAccess()
{
con = new SQLiteConnection("Data Source=test.db3");//test.db3位于debug目录下
command = con.CreateCommand();
}
//读取数据
public DataTable ReadTable(string tableName)
{
command.CommandText = "SELECT * FROM " + tableName;
SQLiteDataAdapter da = new SQLiteDataAdapter(command);
DataTable dt = new DataTable(tableName);
da.Fill(dt);
return dt;
}
//修改数据表
public bool UpdateTable(DataTable srcTable, string tableName)
{
bool isok = false;
try
{
command.CommandText = "SELECT * FROM " + tableName;
SQLiteDataAdapter oda = new SQLiteDataAdapter(command);
SQLiteCommandBuilder ocb = new SQLiteCommandBuilder(oda);
oda.InsertCommand = ocb.GetInsertCommand();
oda.DeleteCommand = ocb.GetDeleteCommand();
oda.UpdateCommand = ocb.GetUpdateCommand();
oda.Update(srcTable);
isok = true;
}
catch (Exception ex)
{}
return isok;
}
}
}

相关RIDU操作方法的代码如下:

//刷新数据源
private void RefreshTable()
{
this.dataGridView1.DataSource = dba.ReadTable("testone");
}
//更新数据源
private void UpdateTable(DataTable dt)
{
if (dt != null)
{
if (dba.UpdateTable(dt, "testone"))
{
RefreshTable();
MessageBox.Show("OK");
}
else
MessageBox.Show("Failed");
}
}
//浏览
private void button1_Click(object sender, EventArgs e)
{
RefreshTable();
}

//新增、修改
private void button2_Click(object sender, EventArgs e)
{
DataTable dt = this.dataGridView1.DataSource as DataTable;
UpdateTable(dt);
}

//删除
private void button3_Click(object sender, EventArgs e)
{
DataTable dt = this.dataGridView1.DataSource as DataTable;
DataRowView rowview = this.dataGridView1.CurrentRow.DataBoundItem as DataRowView;
if (rowview != null)
{
rowview.Row.Delete();
UpdateTable(dt);
}
}


通过试用 ,初步感觉SQLite数据库对SQL语言的支持也不错、有相关不俗实力的技术支持(开发团队、社区、论坛)、运行速度较快、普遍关注程度较高、够轻量级...,其中够轻量级是其最大的优点和亮点。

这个是我今天的使用的结果。供大家参考
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: