SQLite安装和调用

摘要:
在网上搜索后,我找到了SQLite,这真是一件好事。它不需要安装和部署。关键是客户端计算机可以在不安装任何东西的情况下使用数据库。尺寸仅超过1M,这正是我想要的。简单记录SQLite的使用情况。1、 SQLite安装和下载地址:http://www.sqlite.org/download.html我使用Win 732并选择了这两个。下载并解压缩后,将两个压缩文件放入磁盘C上的新sqlite文件夹或任何其他文件夹中,作为sqlite的安装路径。

  想把项目的SQL SERVER数据库换掉,因为SQL SERVER过于庞大,而我的项目只是小型的桌面应用程序。

  网上搜了一下,发现了SQLite,真是个好东西,无需安装和部署,关键是客户电脑什么都不用装就能使用数据库,大小只有1M多,正是我想要的。

  花了半天时间,把项目的数据库替换掉,SQL语句基本都能用,只修改了个别语句。把SQLite的用法做个简单的记录。

  一、SQLite安装

  下载地址:http://www.sqlite.org/download.html 我用的是win7 32位,选了这两个。

SQLite安装和调用第1张

  下载解压后,将两个加压后的文件放入C盘新建的sqlite文件夹,或者其他任意的文件夹,作为SQLite的安装路径。

  如果使用dos环境配置数据库和表结构,需要用到sqlite3这个命令,需要将sqlite3.exe配置到系统环境变量,右击计算机->属性->高级系统设置->环境变量,编辑Path,添加C:sqlite,

即我们建立的安装路径。

SQLite安装和调用第2张

添加后,可以使用cmd,输入sqlite3,出现

SQLite安装和调用第3张

  即为添加成功,然后我们可以在dos窗口下使用命令创建数据库和表,包括各种增删改查操作。如果不喜欢dos操作,就不用添加环境变量,直接使用可视化工具。

  二、SQLite可视化工具

  我个人喜欢可视化操作,虽然没有dos操作“高大上”,但是有方便的工具为啥不用呢?我搜了一下,SQLite的可视化工具还挺多,我下了一款,叫SQLite Studio,感觉还可以。

  SQLite Studio下载地址:https://sqlitestudio.pl/index.rvt 

  在可视化工具下,傻瓜式创建数据库和表。

  三、SQLite驱动

  数据库创建好后,需要程序连接数据库,因为我用的是C#,所以还要下载C# 32位的驱动程序。

  驱动下载地址:http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki ,我习惯用.net 4.0,所以下载了这个

SQLite安装和调用第4张

  下载后直接安装,然后在程序里引用安装路径下的System.Data.SQLite.dll,导入命名空间:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Data.SQLite;
namespace DAL
{
    public class DAL_LOGIN
    {
        private static string conStr = System.Configuration.ConfigurationManager.ConnectionStrings["SQLConnectionString"].ConnectionString;
     System.Data.DataSet ds = new System.Data.DataSet();
        SQLiteConnection sqlConn = new SQLiteConnection();
        SQLiteCommand sqlComm = new SQLiteCommand();
        SQLiteDataAdapter sqlDa = new SQLiteDataAdapter();
        SQLiteCommandBuilder scb = new SQLiteCommandBuilder();

        public void Conn()
        {
            if(sqlConn.State == ConnectionState.Closed)
            {
                sqlConn = new SQLiteConnection(conStr);
                sqlConn.Open();
                sqlComm.Connection = sqlConn;
                sqlComm.CommandType = CommandType.Text;
            }

        }

        public void Close()
        {
            sqlDa.Dispose();
            sqlDa = null;
            sqlComm.Dispose();
            sqlComm = null;
            sqlConn.Dispose();
            sqlConn = null;
        }

        public DataTable GetUserName()
        {        
            sqlComm.CommandText="select distinct UserName from CMSUSERINFO order by UserName asc";
            sqlComm.Parameters.Clear();

            sqlDa.SelectCommand = sqlComm;        
            sqlDa.Fill(ds, "MER_LOGIN_USERNAME");
            ds.Tables["MER_LOGIN_USERNAME"].Clear();
            sqlDa.Fill(ds, "MER_LOGIN_USERNAME");

            return ds.Tables["MER_LOGIN_USERNAME"];
        }
        public int CheckUserInfo(string name,string pass)
        {
                sqlComm.CommandText = "select count(*) from CMSUSERINFO where UserName = @name and UserPass =@pass";
                sqlComm.Parameters.Clear();
                var paras = new SQLiteParameter[] { new SQLiteParameter("@name", name), new SQLiteParameter("@pass", pass) };
                sqlComm.Parameters.AddRange(paras);
                int n =int.Parse(sqlComm.ExecuteScalar().ToString());
                return n;
        }

    }

}

  使用App.config配置连接字符串:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <connectionStrings>
    <add name="SQLConnectionString" 
         connectionString="Data Source=|DataDirectory|*.db;Pooling=true;FailIfMissing=false"
         providerName="System.Data.SQLite"/>
  </connectionStrings>
</configuration>

  我喜欢把*.db放入到应用程序路径下,直接拷贝就能在其他电脑上运行。在客户电脑文件夹内只需要System.Data.SQLite.dll和*.db这两个文件即可访问数据库,当然.net 4.0是必需的。

 

免责声明:文章转载自《SQLite安装和调用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇C++11新特性,利用std::chrono精简传统获取系统时间的方法Java内存分页工具类下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

DBImport v3.0 中文版发布:支持各大数据库数据互导(IT人员必备工具)

事隔一年,做为进军海外的CYQ.DBImport数据库工具,终于发布新版本:DBImport V3.0。 为了广大国内同胞用的舒心,本次发布中文版本(V1、V2版本为英文版),同时去掉了个人商标CYQ前缀。 另外,本版本内置未面世版CYQ.Data V5内核。 DBImport 适合人群:IT人士、站长、及和数据库打交首的相关相关人员。 只要你是开发...

java基础1-变量+包机制+javadoc命令

1.sout+tab:System.out.println的快捷键 2.强制转换:(高转低) 由低到高:byte,short,char→int→long→float→double 运算时,先转为相同类型再进行计算 //强制转换(类型)变量名 int i=128; byte b = (byte)i; System.out.println(i);/...

Delphi连接Oracle控件ODAC的安装及使用

Delphi ODAC 控件下载 ODAC 64位客户端 12.1.0.2.4 http://down-ww3.7down.net/pcdown/soft/xiazai/odac-x64.rar Delphi连接Oracle有很多种方式,但大多要在客户机上安装Oracle那庞大的客户端,比较不方便,使用ODAC控件连接Oracle则免去了这些麻烦。ODAC...

JDBC 基础入门

由于我也是初学参考的是网上的或者是培训机构的资料所以可能会有错误的信息,仅供参考 一、什么是JDBC(Java Data Base Connectivity)? java程序连接数据库,JDBC是由SUN公司提出的一组规范,这组规范主要由一组接口构成,主要作用就是访问数据库。 二、JDBC核心思想【思想重要】     三、核心API【重点】      ...

接口测试小结

环境准备 1.JDK版本和Jar包确认,无特殊要求JDK安装后即可 2.数据库确认(通常使用dev),环境配置文件 ats-config.properties,数据库信息文件devdb.conf 3.在trunk流测试时需要查看基类是否有本地测试限制,有限制放开即可   1.session初始化 1.RPC接口写测试脚本时,往往需要初始化sessio...

全网数据库大全

参考资源 数据库种类发展史和大数据下的数据库 NoSQL百度百科 NewSQL百度百科 分布式NewSQL对比——heaventouch大佬的博客 Google Spanner论文翻译——林子雨 人道浮沉的博客 列式数据库与行式数据库 Oracle数据库、MySQL数据库、SQL Server数据库 Oracle、Mysql、SQL Server比较 Mo...