2010年SQLite学习笔记之一

简介: 2010年SQLite学习笔记之一 一.            如何获取SQLite最新版本 官方站点:http://www.sqlite.org/ 从http://www.sqlite.

2010SQLite学习笔记之一

一.            如何获取SQLite最新版本

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

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

即如下页面下载

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

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

sqlite-amalgamation-3_6_22.zipSQLitewindows下源码文件

三.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, y, 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.dllsqlite3.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;

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

pragma  encoding;

 

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

NULL 值为NULL
INTEGER
值为带符号的整型,根据类别用123468字节存储

REAL
值为浮点型,8字节存储
TEXT
值为text字符串,使用数据库编码(UTF-8, UTF-16BE or UTF-16-LE)存储

BLOB
值为二进制数据,具体看实际输入

但实际上,sqlite3也接受如下的数据类型:
smallint  16
位元的整数
interger  32
位元的整数
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

相关文章
|
24天前
|
API 数据库 C语言
【C/C++ 数据库 sqlite3】SQLite C语言API返回值深入解析
【C/C++ 数据库 sqlite3】SQLite C语言API返回值深入解析
164 0
|
2月前
|
存储 监控 安全
内网屏幕监控软件的数据存储与管理:使用SQLite数据库保存监控记录和配置信息
在当今数字化时代,安全和监控在企业和组织中变得至关重要。内网屏幕监控软件作为一种关键工具,帮助组织监视员工的活动并确保信息安全。这种软件不仅需要高效地记录和管理监控数据,还需要能够方便地进行配置和调整。本文将讨论如何使用SQLite数据库来保存监控记录和配置信息,并介绍如何通过自动化机制将监控到的数据提交到指定网站。
150 2
|
6天前
|
SQL 关系型数据库 数据库
Python中SQLite数据库操作详解:利用sqlite3模块
【4月更文挑战第13天】在Python编程中,SQLite数据库是一个轻量级的关系型数据库管理系统,它包含在一个单一的文件内,不需要一个单独的服务器进程或操作系统级别的配置。由于其简单易用和高效性,SQLite经常作为应用程序的本地数据库解决方案。Python的内置sqlite3模块提供了与SQLite数据库交互的接口,使得在Python中操作SQLite数据库变得非常容易。
|
1月前
|
关系型数据库 数据库 C++
嵌入式数据库sqlite3【基础篇】基本命令操作,小白一看就懂(C/C++)
嵌入式数据库sqlite3【基础篇】基本命令操作,小白一看就懂(C/C++)
|
1月前
|
存储 SQL 数据库
django如何连接sqlite数据库?
django如何连接sqlite数据库?
38 0
|
2月前
|
缓存 NoSQL 关系型数据库
数据库缓存一致性学习笔记(一)
数据库缓存一致性学习笔记(一)
|
2月前
|
开发框架 安全 .NET
某教程学习笔记(一):07、数据库漏洞(access注入)
某教程学习笔记(一):07、数据库漏洞(access注入)
18 0
|
2月前
|
XML SQL 安全
某教程学习笔记(一):08、MSSQL数据库漏洞
某教程学习笔记(一):08、MSSQL数据库漏洞
17 0
|
2月前
|
安全 关系型数据库 MySQL
某教程学习笔记(一):09、MYSQL数据库漏洞
某教程学习笔记(一):09、MYSQL数据库漏洞
17 0
|
2月前
|
Oracle 关系型数据库 数据处理
某教程学习笔记(一):10、oracle数据库注入
某教程学习笔记(一):10、oracle数据库注入
17 0