sqlite3 语句总结

一、

sqlite3长用于 轻量级的 数据存储,象单片机这一类,但是现在的sqlite3,已经很先进,不能小看

二、

sqlite3常用命令

当前目录下建立或打开test.db数据库文件,并进入sqlite命令终端,以sqlite>前缀标识:

#sqlite3 test.db

查看数据库文件信息命令(注意命令前带字符‘.‘):

sqlite>.database

查看所有表的创建语句:

sqlite>.schema

查看指定表的创建语句:

sqlite>.schema table_name

以sql语句的形式列出表内容:

sqlite>.dump table_name

设置显示信息的分隔符:

sqlite>.separator symble

Example:设置显示信息以‘:’分隔

sqlite>.separator :

设置显示模式:

sqlite>.mode mode_name

Example:默认为list,设置为column,其他模式可通过.help查看mode相关内容

sqlite>.mode column

输出帮助信息:

sqlite>.help

设置每一列的显示宽度:

sqlite>.width width_value

Example:设置宽度为2

sqlite>.width 2

列出当前显示格式的配置:

sqlite>.show

退出sqlite终端命令:

sqlite>.quit

sqlite>.exit

3、sqlite3指令

sql的指令格式:所有sql指令都是以分号(;)结尾,两个减号(--)则表示注释。

如:

sqlite>create studen_table(Stu_no interger PRIMARY KEY, Name text NOT NULL, Id interger UNIQUE, Age interger CHECK(Age>6), School text DEFAULT ‘xx小学);

该语句创建一个记录学生信息的数据表。

3.1 sqlite3存储数据的类型

NULL:标识一个NULL值

INTERGER:整数类型

REAL:浮点数

TEXT:字符串

BLOB:二进制数

3.2 sqlite3存储数据的约束条件

Sqlite常用约束条件如下:

PRIMARY KEY - 主键:

1)主键的值必须唯一,用于标识每一条记录,如学生的学号

2)主键同时也是一个索引,通过主键查找记录速度较快

3)主键如果是整数类型,该列的值可以自动增长

NOT NULL - 非空:

约束列记录不能为空,否则报错

UNIQUE - 唯一:

除主键外,约束其他列的数据的值唯一

CHECK - 条件检查:

约束该列的值必须符合条件才可存入

DEFAULT - 默认值:

列数据中的值基本都是一样的,这样的字段列可设为默认值

3.3 sqlite3常用指令

1)建立数据表

create table table_name(field1 type1, field2 type1, ...);

table_name是要创建数据表名称,fieldx是数据表内字段名称,typex则是字段类型。

例,建立一个简单的学生信息表,它包含学号与姓名等学生信息:

create table student_info(stu_no interger primary key, name text);

create table if not exists 表名(字段名1,字段名2...);

2)添加数据记录

insert into table_name(field1, field2, ...) values(val1, val2, ...);

valx为需要存入字段的值。

例,往学生信息表添加数据:

Insert into student_info(stu_no, name) values(0001, alex);

3)修改数据记录

update table_name set field1=val1, field2=val2 where expression;

where是sql语句中用于条件判断的命令,expression为判断表达式

例,修改学生信息表学号为0001的数据记录:

update student_info set stu_no=0001, name=hence where stu_no=0001;

4)删除数据记录

delete from table_name [where expression];

不加判断条件则清空表所有数据记录。

例,删除学生信息表学号为0001的数据记录:

delete from student_info where stu_no=0001;

5)查询数据记录

select指令基本格式:

select columns from table_name [where expression];

a查询输出所有数据记录

select * from table_name;

b限制输出数据记录数量

select * from table_name limit val;

c升序输出数据记录

select * from table_name order by field asc;

d降序输出数据记录

select * from table_name order by field desc;

e条件查询

select * from table_name where expression;

select * from table_name where field in (‘val1‘, ‘val2‘, ‘val3‘);

select * from table_name where field between val1 and val2;

f查询记录数目

select count (*) from table_name;

g区分列数据

select distinct field from table_name;

有一些字段的值可能会重复出现,distinct去掉重复项,将列中各字段值单个列出。

6)建立索引

当说数据表存在大量记录,索引有助于加快查找数据表速度。

create index index_name on table_name(field);

例,针对学生表stu_no字段,建立一个索引:

create index student_index on student_table(stu_no);

建立完成后,sqlite3在对该字段查询时,会自动使用该索引。

7)删除数据表或索引

drop table table_name;

drop index index_name;

时间: 2024-10-14 10:00:12

sqlite3 语句总结的相关文章

sqlite3语句对象的生命周期--举例说明

 语句对象的生命周期:  1.使用sqlite3_prepare_v2或相关的函数创建这个对象  2.使用sqlite3_bind_*()给宿主参数绑定值  3.通过调用sqlite3_step一次或多次来执行这个sql  4.使用sqlite3_reset()重置这个语句,然后回到第2步,这个过程做0次或多次  5.使用sqlite3_finalize()销毁这个对象 例子: 1 //查询指定商品 2 - (Product *)selectProductById:(int)proId { 3

iOS开发笔记--sqlite3 语句总结

1.sqlite3存储数据的类型NULL:标识一个NULL值INTERGER:整数类型REAL:浮点数TEXT:字符串BLOB:二进制数 2. sqlite3存储数据的约束条件Sqlite常用约束条件如下:PRIMARY KEY - 主键:1)主键的值必须唯一,用于标识每一条记录,如学生的学号2)主键同时也是一个索引,通过主键查找记录速度较快3)主键如果是整数类型,该列的值可以自动增长NOT NULL - 非空:约束列记录不能为空,否则报错UNIQUE - 唯一:除主键外,约束其他列的数据的值唯

iOS SQLite3数据库操作

iOS中数据持久化分为四种:属性列表.对象归档.SQLite3和Core Data,SQLite3数据库操作是一个必不或缺的技术. SQLite3简介 SQLite3数据库是移动端(iOS.Android.嵌入式)上认定的关系型数据库,与MySQL.Oracle等数据库相比,具有轻量级的优势,这就造成了体积小.迅速.简单功能依旧强大等优势. SQLite3语句特点 不区分大小写 每一句以:结尾 SQLite字段类型 integer:整型 real:浮点值 text:文本字符串 blob:二进制类

SQLite3的运用

1.导入库文件:libsqlite3. 2..m文件的代码: 1 // 2 // ViewController.m 3 // SQLite3的运用 4 // 5 // Created by PengYunjing on 16/9/24. 6 // Copyright © 2016年 PYJ. All rights reserved. 7 // 8 9 /** 10 * 说明: 11 * sqlite3 *ppDb, 数据库句柄,跟文件句柄FILE很类似 12 * sqlite3_stmt *st

[原创] Xcode中使用sqlite3访问数据库

最近开始写博客了,把我学习到的东西进行汇总和总结,今天就说说怎么使用sqlite3来操纵数据库吧 数据库的相关知识我就不去说明了,毕竟只要会sql语言的人就大家都一样. 本案例是在Xcode环境下创建的single view application进行演示操作,如有不清楚的朋友可以找我下载代码.qq:1750587828. 首先第一点,为什么要使用sqlite3? 在iOS的编程中,毫无疑问接触最多的就是界面的代码编排和设计,数据的解析与放置,算法的各种挠头问题... 在数据的解析与放置这一块,

linux 使用sqlite3

1:c中使用sqlite3需要调用函数接口操作: sqlite3 *db; int status=sqlite_open("dbname",&db);//打开或者创建数据库 int status=sqlite3_exec(db,yuju,huitiaohanshu,0,cuowuzhizhen);//数据库所有的操作都得通过这个函数执行 sqlite3_close(db);//使用完后要关闭数据库资源 2:sqlite3语句: 建表: create table pic([pic

Objective-C访问SQLite

数据库的相关知识我就不去说明了,毕竟只要会sql语言的人就大家都一样. 本案例是在Xcode7.2环境下创建的single view application进行演示操作. 首先第一点,为什么要使用sqlite3? 在iOS的编程中,毫无疑问接触最多的就是界面的代码编排和设计,数据的解析与放置,算法的各种挠头问题... 在数据的解析与放置这一块,就会涉及到数据库缓存的操作,我们都知道,iOS手机编程是在手机端运行的,你不能老是去服务器端读取数据啊,好,就算你不烦,手机也跑的起来,流量不要过啊,对于

iOS 开发的一些网址

http://www.cnblogs.com/iCocos/p/4553291.html ios学习路线图,值得看一下你的哪些技术还没掌握到位还有就是往高级发展还差哪些知识(这个人的博客特别值得看,虽然时间短,但是总结特别到位)http://www.cnblogs.com/ios4kerwin/p/4744082.html iOS开发笔记--iOS.mac开源项目及库汇总 http://www.cnblogs.com/znios/p/4590904.html iOS项目开发优秀文章汇总http:

Sqlit--学习教程(建立数据库表)

SQLite 的 sqlite3 命令被用来创建新的 SQLite 数据库.您不需要任何特殊的权限即可创建一个数据. 语法 sqlite3 命令的基本语法如下: $sqlite3 DatabaseName.db 通常情况下,数据库名称在 RDBMS 内应该是唯一的. 实例 如果您想创建一个新的数据库 <testDB.db>,SQLITE3 语句如下所示: 上面的命令将在当前目录下创建一个文件 testDB.db.该文件将被 SQLite 引擎用作数据库.如果您已经注意到 sqlite3 命令在