SQLite数据库安装、试用及编程测试手记

       

    今天,试用了一下SQLite数据库,并简单地进行了一下数据表记录增、删、修改的编程测试,现将试用过程记录如下:

    1、安装SQLite数据库

    所谓的安装很简单,登陆http://www.sqlite.org/网站,下载SQLite数据库(目前最新版本为3.6.3)的ZIP压缩包,解压到指定目录,打开目录可以发现一个名称为sqlite3.exe的可执行文件,运行该文件可以通过命令行方式建立、管理SQLite类型的数据库(见截图)。详细的可用命令清单可以通过运行【.help】命令查询,每个命令的具体功能可查阅相关帮助文档,这里就不具体介绍了。 

 

 

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

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

 

 

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

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

 

 

 

 

     在Visual studio 2005选择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语言的支持也不错、有相关不俗实力的技术支持(开发团队、社区、论坛)、运行速度较快、普遍关注程度较高、够轻量级...,其中够轻量级是其最大的优点和亮点。

    共享这篇简单的试用手记,希望能吸引大家对SQLite数据库的关注,同时也希望能给予初次使用 SQLite数据库的朋友以帮助。谢谢!

附源码下载:/Files/ysxlh/SQLiteView.rar

 

 

 

posted @ 2008-10-11 22:37  yisx  阅读(7661)  评论(13编辑  收藏  举报