【.NET】学习SQLite(1)
前沿
SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。
SQLite下载安装以及数据库的创建
SQLite的下载地址:http://www.sqlite.org/download.html
这里我下载的是支持WINDOWS系统,基于32位的版本
下载解压,你会看到就一个exe文件,不用安装,如果双击此文件,会弹出dos窗口,提示“连接到一个临时的内存中的数据库”。
如果我们想创建自己的数据库,那么我们要先创建一个保存数据库的文件夹,然后一定要把这个exe文件复制到我们保存数据库的文件夹,否则无法创建数据库。我这里在C盘下面创建一个Sqlite文件夹,然后把Sqlite.exe移动到此文件夹。
1、创建数据库:
打开dos窗口,首先进入我们刚才创建的目录:
C:\Users\Administrator>CD/
C:\>cd C:/Sqlite 然后我们使用Sqlite3命令输入:Sqlite3 Test.db,此时我们并没有在文件夹下面看到Test数据库,因为此时的数据库没有任何表和数据,所以我们看不到创建的数据库,但是数据库已经创建。
2、创建表News:
此时即可完成表的创建,当把主键设为Integer时,则该主键为自动增长;
3、插入数据时:
这里我们可以看到只要我们不输入分号,SQLite不会自动执行我们输入的语句,当我们输入分号的时候,才确认输入结束,最后执行。
4、查询表数据:
5、获取最后一次插入的数据的主键:
6、在DOS中,键入Ctrl+C,退出数据库,Unix中,使用Ctrl+D
更多SQLIte命令,可以看看官方文档:http://www.sqlite.org/cli.html
Sqlite管理工具 Navicat for SQLite
Nvaicat for SQLite是一款收费软件,免费使用1个月,对于用于学习的同学们是足够了;
下载地址:http://www.navicat.com.cn/products/navicat-for-sqlite
这里有详细的关于如何操作此款SQLite数据库的图文介绍,不过在使用过程中,好像无法通过此款软件直接创建数据库,只有附加数据库选项,这里我把刚才我们创建的数据库添加上来:
这里我们就可以看到我们刚才在dos下面创建的数据库啦!!我们可以像操作SQLserver那样来操作简单小巧的SQLIte数据库了。
(修改:在新建连接的时候是可以新建数据库的)
在项目中连接SQLite数据库
首先我们要下载System.Data.SQLite组件,下载地址:http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki
安装完以后,找到安装目录,在vs项目中添加对System.Data.SQLite.dll的引用,然后就可以我们可以像操作SQLserver那样来操作SQLite数据库了,这里有对应的数据库连接类、适配器等等。
SQLiteConnection con = new SQLiteConnection();
con.ConnectionString = @"Data Source=C:\Sqlite\Test.db";
con.Open(); SQLiteCommand cmd = new SQLiteCommand();
cmd.Connection = con;
cmd.CommandText = "Select * from Tb_User";
SQLiteDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
MessageBox.Show(string.Format("{0}\t{1}", reader["Id"], reader["Name"]));
}
reader.Close();
con.Close();
总结
到这里,,我们还可以通过EF来操作SQLite,但是我自己在实验的时候,安装完第一个组件,在添加实体数据类型,选择数据库的时候就是找不到SQLite一项,估计是版本有问题。就先记录到这里吧
参考文章:http://www.cnblogs.com/aehyok/p/3981965.html
【.NET】学习SQLite(1)的更多相关文章
- 一个小时内学习SQLite数据库
一个小时内学习SQLite数据库 2012-05-11 10:24 红薯 OSCHINA 字号:T | T SQLite 是一个开源的嵌入式关系数据库,实现自包容.零配置.支持事务的SQL数据库引擎. ...
- Android开发学习——SQLite数据库与单元测试
SQLite数据库 轻量级关系型数据库 创建数据库需要使用的api:SQLiteOpenHelper public class Myopenhelper extends SQLiteOpenHelp ...
- Android学习---SQLite数据库的增删改查和事务(transaction)调用
上一篇文章中介绍了手工拼写sql语句进行数据库的CRUD操作,本文将介绍调用sqlite内置的方法实现CRUD操作,其实质也是通过拼写sql语句. 首先,创建一个新的android项目: 其次,查看代 ...
- 学习SQLite之路(五) C/C++ SQLite开发实例
介绍一种乌班图中使用sqlite的用法,非常简单,下面的例子是在乌班图12.04中实现的: 1,先安装两个东西: sudo apt-get install sqlite sqlite3 sudo ap ...
- 学习SQLite之路(四)
20160621 更新 参考: http://www.runoob.com/sqlite/sqlite-tutorial.html 1. SQLite alter命令:不通过执行一个完整的转储和数 ...
- 学习SQLite之路(三)
20160616更新 参考: http://www.runoob.com/sqlite/sqlite-tutorial.html 1. SQLite PRAGMA:可以用在 SQLite 环境内控制 ...
- 学习SQLite之路(二)
下面就是真正关于数据库的一些知识了: 20160614更新 参考: http://www.runoob.com/sqlite/sqlite-tutorial.html 1. SQLite创建表: 基本 ...
- 学习SQLite之路(一)
工作快一年了,接触的东西不是很多,学到的东西也不多.无意中看到公司的代码有一点关于sqlite3的(不是我这一层负责的代码),于是乎就学学试试. 参考: http://www.runoob.com/s ...
- 学习SQLite基本语句
SQLite 是一个开源的嵌入式关系数据库,实现自包容.零配置.支持事务的SQL数据库引擎. 其特点是高度便携.使用方便.结构紧凑.高效.可靠. 与其他数据库管理系统不同,SQLite 的安装和运行非 ...
随机推荐
- linux python3获取ip地址
一.不带参数 #!/usr/bin/python # -*- coding: UTF-8 -*- import os def get_ip(): #注意外围使用双引号而非单引号,并且假设默认是第一个网 ...
- 使用cron命令配置定时任务(cron jobs)
原文 http://www.cnblogs.com/end/archive/2012/02/21/2361741.html 开机就启动cron进程的设置命令:chkconfig --add crond ...
- 题解 UVA1184 【Air Raid】
有向无环图(DAG)的最小路径覆盖的模板题. 定义:在一个有向图中,找出最少的路径,使得这些路径经过了所有的点. 由题意可得这是一个有向图,而路径不能相交,于是我们知道这是无向图的不相交最小路径覆盖问 ...
- phpstrom+xdebug+chrome+postman调试工具搭建
php是解释性语言,大部分调试的时候使用var_dump+exit就可以搞定了,但是在大项目或遇到了负载的问题的时候你就需要断点调试.变量打印.性能分析了,php也有非常程序的解决方案,我们现在就动手 ...
- 分享 koa + mysql 的开发流程,构建 node server端,一次搭建个人博客
前言 由于一直在用 vue 写业务,为了熟悉下 react 开发模式,所以选择了 react.数据库一开始用的是 mongodb,后来换成 mysql 了,一套下来感觉 mysql 也挺好上手的.re ...
- springsecurity remember-me 功能
本文基于spring-security-web-4.1.2.RELEASE. 要实现rememberMe,有两种方案. 1.基于简单加密token的方法 首先需要在配置文件中加入<remembe ...
- LightOJ1214 Large Division 基础数论+同余定理
Given two integers, a and b, you should check whether a is divisible by b or not. We know that an in ...
- GlusterFS + lagstash + elasticsearch + kibana 3 + redis日志收集存储系统部署 01
因公司数据安全和分析的需要,故调研了一下 GlusterFS + lagstash + elasticsearch + kibana 3 + redis 整合在一起的日志管理应用: 安装,配置过程,使 ...
- HDU 1521 排列组合 (母函数)
题目链接 Problem Description 有n种物品,并且知道每种物品的数量.要求从中选出m件物品的排列数.例如有两种物品A,B,并且数量都是1,从中选2件物品,则排列有"AB&qu ...
- Verilog笔记.2.数字逻辑电路
1.数字逻辑电路的种类:1) 组合逻辑:输出只是当前输入逻辑电平的函数(有延时),与电路的原始状态无关的逻辑电路.也就是说,当输入信号中的任何一个发生变化时,输出都有可能会根据其变化而变化,但与电路目 ...