html5中文学习网

您的位置: 首页 > 网站及特效实例 > jquery特效 » 正文

C#访问SQLite数据库实例_编程语言综合

[ ] 已经帮助:人解决问题

   SQLite是一款非常轻量级的关系数据库系统,支持多数SQL92标准。SQLite在使用前不需要安装设置,不需要进程来启动、停止或配置,而其他大多数SQL数据库引擎是作为一个单独的服务器进程,被程序使用某种内部进程通信(典型的是TCP/IP),完成发送请求到服务器和接收查询结果的工作,SQLite不采用这种工作方式。使用SQLite时,访问数据库的程序直接从磁盘上的数据库文件读写,没有中间的服务器进程。使用SQLite一般只需要带上一个dll,就可以使用它的全部功能。x6VHTML5中文学习网 - HTML5先行者学习网

  SQLite的主要应用场景有作为手机应用的数据库以及小型桌面软件的数据库。x6VHTML5中文学习网 - HTML5先行者学习网

  一些有用的 SQLite 命令x6VHTML5中文学习网 - HTML5先行者学习网

  显示表结构:x6VHTML5中文学习网 - HTML5先行者学习网

  sqlite> .schema [table]x6VHTML5中文学习网 - HTML5先行者学习网

  获取所有表和视图:x6VHTML5中文学习网 - HTML5先行者学习网

  sqlite > .tablesx6VHTML5中文学习网 - HTML5先行者学习网

  获取指定表的索引列表:x6VHTML5中文学习网 - HTML5先行者学习网

  sqlite > .indices [table ]x6VHTML5中文学习网 - HTML5先行者学习网

  导出数据库到 SQL 文件:x6VHTML5中文学习网 - HTML5先行者学习网

  sqlite > .output [filename ]x6VHTML5中文学习网 - HTML5先行者学习网

  sqlite > .dumpx6VHTML5中文学习网 - HTML5先行者学习网

  sqlite > .output stdoutx6VHTML5中文学习网 - HTML5先行者学习网

  从 SQL 文件导入数据库:x6VHTML5中文学习网 - HTML5先行者学习网

  sqlite > .read [filename ]x6VHTML5中文学习网 - HTML5先行者学习网

  格式化输出数据到 CSV 格式:x6VHTML5中文学习网 - HTML5先行者学习网

  sqlite >.output [filename.csv ]x6VHTML5中文学习网 - HTML5先行者学习网

  sqlite >.separator ,x6VHTML5中文学习网 - HTML5先行者学习网

  sqlite > select * from test;x6VHTML5中文学习网 - HTML5先行者学习网

  sqlite >.output stdoutx6VHTML5中文学习网 - HTML5先行者学习网

  从 CSV 文件导入数据到表中:x6VHTML5中文学习网 - HTML5先行者学习网

  sqlite >create table newtable ( id integer primary key, value text );x6VHTML5中文学习网 - HTML5先行者学习网

  sqlite >.import [filename.csv ] newtablex6VHTML5中文学习网 - HTML5先行者学习网

  备份数据库:x6VHTML5中文学习网 - HTML5先行者学习网

  /* usage: sqlite3 [database] .dump > [filename] */x6VHTML5中文学习网 - HTML5先行者学习网

  sqlite3 mytable.db .dump > backup.sqlx6VHTML5中文学习网 - HTML5先行者学习网

  恢复数据库:x6VHTML5中文学习网 - HTML5先行者学习网

  /* usage: sqlite3 [database ] < [filename ] */x6VHTML5中文学习网 - HTML5先行者学习网

  sqlite3 mytable.db < backup.sqlx6VHTML5中文学习网 - HTML5先行者学习网

  安装使用SQLitex6VHTML5中文学习网 - HTML5先行者学习网

  sqlite的官方下载地址为http://www.sqlite.org/download.html,上面提供了多种版本的sqlite,我选择下载名称为sqlite-shell-win32-x86-3080500.zip 的版本。下载后就直接解压到磁盘上,可以看到解压后只有sqlite3.exe这个文件。x6VHTML5中文学习网 - HTML5先行者学习网

  接下来需要将sqlite加入到path环境变量中(加入环境变量是为了更加方便地使用sqlite),右键我的电脑-属性-高级系统设置-环境变量,在系统变量中找到Path,将解压的文件夹目录加入到后面(注意是文件夹目录,例如我本机的目录 E:Toolssqlite)。打开cmd,输入sqlite3,如果弹出以下消息,就表示成功了。x6VHTML5中文学习网 - HTML5先行者学习网

C#访问SQLite数据库实例 三联

  sqlite常用操作x6VHTML5中文学习网 - HTML5先行者学习网

  1. 新建一个数据库文件x6VHTML5中文学习网 - HTML5先行者学习网

  >命令行进入到要创建db文件的文件夹位置x6VHTML5中文学习网 - HTML5先行者学习网

  >使用命令创建数据库文件: sqlite3 所要创建的db文件名称x6VHTML5中文学习网 - HTML5先行者学习网

  >使用命令查看已附加的数据库文件: .databasesx6VHTML5中文学习网 - HTML5先行者学习网

  2. 打开已建立的数据库文件x6VHTML5中文学习网 - HTML5先行者学习网

  >命令行进入到要打开的db文件的文件夹位置x6VHTML5中文学习网 - HTML5先行者学习网

  >使用命令行打开已建立的db文件: sqlite3 文件名称(注意:假如文件名称不存在,则会新建一个新的db文件)x6VHTML5中文学习网 - HTML5先行者学习网

  3. 查看帮助命令x6VHTML5中文学习网 - HTML5先行者学习网

  >命令行直接输入sqlite3,进去到sqlite3命令行界面x6VHTML5中文学习网 - HTML5先行者学习网

  >输入.help 查看常用命令x6VHTML5中文学习网 - HTML5先行者学习网

  使用sqlite管理工具x6VHTML5中文学习网 - HTML5先行者学习网

  shell脚本虽然提供了很强大的功能,但是使用起来还是不够方便,幸运的是,sqlite有很多开源而且优秀的DBMS!x6VHTML5中文学习网 - HTML5先行者学习网

  这里我将使用一款叫做SQLiteSPY的软件,官网地址为http://www.yunqa.de/Delphi/doku.php/products/sqlitespy/index,这个软件是绿色免安装版,解压直接运行就可以了。x6VHTML5中文学习网 - HTML5先行者学习网

  可以看到,SQLiteSpy的界面布局和SQLServer很相近,操作起来很方便,这里就不在继续详细介绍了。(要知道的一点就是单纯使用这个软件也可以创建和使用sqlite数据库,不需要与上面提到的shell工具关联)x6VHTML5中文学习网 - HTML5先行者学习网

  C#使用System.Data.SQLite.dll访问数据库x6VHTML5中文学习网 - HTML5先行者学习网

  SQLite提供了用于C#调用的dll,下载地址为http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki,注意根据.net framework版本下载对应的组件。在项目中只要引入System.Data.SQLite.dll这个组件,就可以实现数据库操作了。由于SQLite.dll实现了ADO.NET的接口,所以熟悉ADO.NET的人上手SQLite.dll也是非常快的。DEMO数据库表的结构为:x6VHTML5中文学习网 - HTML5先行者学习网

  CREATE TABLE herox6VHTML5中文学习网 - HTML5先行者学习网

  (x6VHTML5中文学习网 - HTML5先行者学习网

  hero_id INT NOT NULL PRIMARY KEY,x6VHTML5中文学习网 - HTML5先行者学习网

  hero_name NVARCHAR(10) NOT NULL);x6VHTML5中文学习网 - HTML5先行者学习网

  比较需要注意到一点是数据库连接字符串,SQLite使用的连接字符串比较简单,只要写上数据库文件的引用路径就可以了。DEMO是一个控制台应用程序,增删查改的实例代码如下:x6VHTML5中文学习网 - HTML5先行者学习网

  using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Data.Common;using System.Data.SQLite;namespace ConsoleAppx6VHTML5中文学习网 - HTML5先行者学习网

  { class Programx6VHTML5中文学习网 - HTML5先行者学习网

  { static readonly string DB_PATH = "Data Source=E:/database/sqlite/arena.db"; static void Select()x6VHTML5中文学习网 - HTML5先行者学习网

  { using (SQLiteConnection con = new SQLiteConnection(DB_PATH))x6VHTML5中文学习网 - HTML5先行者学习网

  {x6VHTML5中文学习网 - HTML5先行者学习网

  con.Open(); string sqlStr = @"SELECT *x6VHTML5中文学习网 - HTML5先行者学习网

  FROM hero"; using(SQLiteCommand cmd = new SQLiteCommand(sqlStr,con))x6VHTML5中文学习网 - HTML5先行者学习网

  { using (SQLiteDataReader dr = cmd.ExecuteReader())x6VHTML5中文学习网 - HTML5先行者学习网

  { while (dr.Read())x6VHTML5中文学习网 - HTML5先行者学习网

  {x6VHTML5中文学习网 - HTML5先行者学习网

  Console.WriteLine(dr["hero_id"].ToString() + dr["hero_name"]);x6VHTML5中文学习网 - HTML5先行者学习网

  }x6VHTML5中文学习网 - HTML5先行者学习网

  }x6VHTML5中文学习网 - HTML5先行者学习网

  }x6VHTML5中文学习网 - HTML5先行者学习网

  }x6VHTML5中文学习网 - HTML5先行者学习网

  } static void Insert()x6VHTML5中文学习网 - HTML5先行者学习网

  { using (SQLiteConnection con = new SQLiteConnection(DB_PATH))x6VHTML5中文学习网 - HTML5先行者学习网

  {x6VHTML5中文学习网 - HTML5先行者学习网

  con.Open(); string sqlStr = @"INSERT INTO herox6VHTML5中文学习网 - HTML5先行者学习网

  VALUESx6VHTML5中文学习网 - HTML5先行者学习网

  (x6VHTML5中文学习网 - HTML5先行者学习网

  1,x6VHTML5中文学习网 - HTML5先行者学习网

  '萨满'x6VHTML5中文学习网 - HTML5先行者学习网

  )"; using(SQLiteCommand cmd = new SQLiteCommand(sqlStr,con))x6VHTML5中文学习网 - HTML5先行者学习网

  {x6VHTML5中文学习网 - HTML5先行者学习网

  cmd.ExecuteNonQuery();x6VHTML5中文学习网 - HTML5先行者学习网

  }x6VHTML5中文学习网 - HTML5先行者学习网

  }x6VHTML5中文学习网 - HTML5先行者学习网

  } static void Update()x6VHTML5中文学习网 - HTML5先行者学习网

  { using (SQLiteConnection con = new SQLiteConnection(DB_PATH))x6VHTML5中文学习网 - HTML5先行者学习网

  {x6VHTML5中文学习网 - HTML5先行者学习网

  con.Open(); string sqlStr = @"UPDATE herox6VHTML5中文学习网 - HTML5先行者学习网

  SET hero_name = '盗贼'x6VHTML5中文学习网 - HTML5先行者学习网

  WHERE hero_id = 1"; using (SQLiteCommand cmd = new SQLiteCommand(sqlStr, con))x6VHTML5中文学习网 - HTML5先行者学习网

  {x6VHTML5中文学习网 - HTML5先行者学习网

  cmd.ExecuteNonQuery();x6VHTML5中文学习网 - HTML5先行者学习网

  }x6VHTML5中文学习网 - HTML5先行者学习网

  }x6VHTML5中文学习网 - HTML5先行者学习网

  } static void Delete()x6VHTML5中文学习网 - HTML5先行者学习网

  { using (SQLiteConnection con = new SQLiteConnection(DB_PATH))x6VHTML5中文学习网 - HTML5先行者学习网

  {x6VHTML5中文学习网 - HTML5先行者学习网

  con.Open(); string sqlStr = @"DELETE FROM hero"; using (SQLiteCommand cmd = new SQLiteCommand(sqlStr, con))x6VHTML5中文学习网 - HTML5先行者学习网

  {x6VHTML5中文学习网 - HTML5先行者学习网

  cmd.ExecuteNonQuery();x6VHTML5中文学习网 - HTML5先行者学习网

  }x6VHTML5中文学习网 - HTML5先行者学习网

  }x6VHTML5中文学习网 - HTML5先行者学习网

  } static void Main(string[] args)x6VHTML5中文学习网 - HTML5先行者学习网

  {x6VHTML5中文学习网 - HTML5先行者学习网

  Insert();x6VHTML5中文学习网 - HTML5先行者学习网

  Select();x6VHTML5中文学习网 - HTML5先行者学习网

  Update();x6VHTML5中文学习网 - HTML5先行者学习网

  Select();x6VHTML5中文学习网 - HTML5先行者学习网

  Delete();x6VHTML5中文学习网 - HTML5先行者学习网

  }x6VHTML5中文学习网 - HTML5先行者学习网

  }x6VHTML5中文学习网 - HTML5先行者学习网

  }x6VHTML5中文学习网 - HTML5先行者学习网

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助