SQLite学习笔记(一)

SQLite学习笔记(一),第1张

概述转自:http://www.cnblogs.com/hicjiajia/archive/2011/01/25/1944578.html 一.如何获取SQLite最新版本 官方站点:http://www.sqlite.org/ 从http://www.sqlite.org/网站的Download页面获取 即如下页面下载 http://www.sqlite.org/download.html 二.Wi 转自:http://www.cnblogs.com/hicjiajia/archive/2011/01/25/1944578.HTML
一.如何获取sqlite最新版本

官方站点:http://www.sqlite.org/

从http://www.sqlite.org/网站的Download页面获取

即如下页面下载

http://www.sqlite.org/download.HTML

二.windows下的sqlite的源代码是哪个软件压缩包?

@L_502_2@是sqlite的windows下源码文件

三.Window下的sqlite命令行工具

sqlite-3_6_22.zip

四.Window下的sqlite开发库,即动态链接库以及DEF文件

sqlitedll-3_6_22.zip

五.sqlite最新版本是:3.6.22 六.b<=a && a <= c的SQL语句如何写

在sqlite中,表达式"a BETWEEN b AND c"等于表达式"a >= b AND a <= c",在比较表达式时,a可以是具有任何亲和性

七.a的值是x,y,z其中一个值,SQL语句如何写

sqlite把表达式"a IN (x,z)"和"a = z OR a = y OR a = z"视为相等.

八.如何创建制定目录的数据库

sqlite3 D:\Project\SyncML\lib\deBUG\atsync.db

九.创建数据的注意事项

如果不往数据库里面添加任何的表,这个数据库等于没有建立,不会在硬盘上产生任何文件,如果数据库已经存在,则会打开这个数据库。

十.如何添加一张数据表

create table student(name varchar(10),age smallint);

十一.如何往数据表中添加数据

insert into student values('张三',20);

十二.如何通过sqlite3.dll与sqlite3.def生成sqlite3.lib文件

liB /DEF:sqlite3.def /machine:IX86

十三.如何查询sqlite工具的软件版本

也就是sqlite3.exe应用程序小工具的版本号

方法一:进入sqlite3.exe所在目录,在命令行执行如下命令

sqlite3 –version

方法二:

select sqlite_version();

十四.如何在字符串中使用单引号(')?

sql标准规定,在字符串中,单引号需要使用逃逸字符,即在一行中使用两个单引号

十五.如果删除了大量数据,而又想缩小数据库文件占用的空间,执行VACUUM命令

vacuum;

十六.在sqlite中,如何在一个表上添加或删除一列?

sqlite有有限地ALTER table支持。你可以使用它来在表的末尾增加一列,可更改表的名称。如果需要对表结构做更复杂的改变,则必须重新建表。重建时可以先将已存在的数据放到一个临时表中,删除原表,创建新表,然后将数据从临时表中复制回来。

如,假设有一个t1表,其中有"a","b","c"三列,如果要删除列c,以下过程描述如何做:

开始事物处理

BEGIN TRANSACTION;

创建临时表格t1-backup

CREATE TEMPORARY table t1_backup(a,b);

将数据库表t1中的所有数据拷贝到表t1-backup中

INSERT INTO t1_backup SELECT a,b FROM t1;

删除表格t1

DROP table t1;

创建表格t1

CREATE table t1(a,b);

将数据库表t1-backup中的所有数据拷贝到表t1中

INSERT INTO t1 SELECT a,b FROM t1_backup;

删除备份表格t1-backup

DROP table t1_backup;

事物提交

COMMIT;

十七.如何查询当前的编码的编码格式

pragmaenCoding;

十八.sqlite支持哪些数据类型些?

NulL值为NulL
INTEGER值为带符号的整型,根据类别用1,2,3,4,6,8字节存储
REAL值为浮点型,8字节存储
TEXT值为text字符串,使用数据库编码(UTF-8,UTF-16BE or UTF-16-LE)存储
BLOB值为二进制数据,具体看实际输入

但实际上,sqlite3也接受如下的数据类型:
smallint16位元的整数
interger32位元的整数
decimal(p,s)p精确值和s大小的十进位整数,精确值p是指全部有几个数(digits)大小值,s是指小数点後有几位数。如果没有特别指定,则系统会设为p=5; s=0。
float 32位元的实数。
double 64位元的实数。
char(n) n长度的字串,n不能超过254。
varchar(n)长度不固定且其最大长度为n的字串,n不能超过4000。
graphic(n)和char(n)一样,不过其单位是两个字元double-bytes,n不能超过127。这个形态是为了支援两个字元长度的字体,例如中文字。
vargraphic(n)可变长度且其最大长度为n的双字元字串,n不能超过2000。
date包含了年份、月份、日期。
time包含了小时、分钟、秒。
timestamp包含了年、月、日、时、分、秒、千分之一秒。

十九.如果将某个字段设置为INTEGER PRIMARY KEY属性,有什么特性?

如果将声明表的一列设置为INTEGER PRIMARY KEY,则具有:

1.每当你在该列上插入一NulL值时,NulL自动被转换为一个比该列中最大值大1的一个整数;

2.如果表是空的,将会是1;

注意该整数会比表中该列上的插入之前的最大值大1。该键值在当前的表中是唯一的。但有可能与已从表中删除的值重叠。要想建立在整个表的生命周期中唯一的键值,需要在INTEGER PRIMARY KEY上增加autoINCREMENT声明。那么,新的键值将会比该表中曾能存在过的最大值大1。

二十.字段声明中有autoINCREMENT属性,有什么与众不同的含义?

要想建立在整个表的生命周期中唯一的键值,需要在INTEGER PRIMARY KEY上增加autoINCREMENT声明。那么,新的键值将会比该表中曾能存在过的最大值大1。

总结

以上是内存溢出为你收集整理的SQLite学习笔记(一)全部内容,希望文章能够帮你解决SQLite学习笔记(一)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/1182226.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存