版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、转SQLite基本语法手册 SQLite是一个软件库,用于实现自包含、非服务式、零配置、事务化的SQL数据库引擎。SQLite是一个嵌入式SQL数据库引擎,与其它大多数SQL数据库不同的是,SQLite没有独立的服务进程。SQLite直接读写原始的磁盘文件,一个拥有多个表、索引、触发器和视图的完整SQL数据库就包含在一个独立的磁盘文件中。 一.结构定义 1.CREATE TABLE:创建新表。语法:sql-
2、command := CREATE TEMP | TEMPORARY TABLE table-name ( column-def , column-def* , constraint*) sql-command := CREATE TEMP | TEMPORARY TABLE database-name.
3、table-name AS select-statement column-def := name type CONSTRAINT name column-constraint* type := typename |typename ( number ) |typename ( number , number ) column-constraint :=
4、160;NOT NULL conflict-clause |PRIMARY KEY sort-order conflict-clause |UNIQUE conflict-clause |CHECK ( expr ) conflict-clause |DEFAULT value |COLLATE collation-name
5、0;constraint := PRIMARY KEY ( column-list ) conflict-clause |UNIQUE ( column-list ) conflict-clause |CHECK ( expr ) conflict-clause conflict-clause := ON CONFL
6、ICT conflict-algorithm 2.CREATE VIEW:创建一个视图(虚拟表),该表以另一种方式表示一个或多个表中的数据。语法:sql-command := CREATE TEMP | TEMPORARY VIEW database-name. view-name AS select-statement 例子:CREATE VIEW master_view A
7、S SELECT * FROM sqlite_master WHERE type='view'说明:创建一个名为master_view的视图,其中包括sqlite_master这个表中的所有视图表。 3.CREATE TRIGGER:创建触发器,触发器是一种特殊的存储过程,在用户试图对指定的表执行指定的数据修改语句时自动执行。语法:sql-statement := CREATE TEMP
8、;| TEMPORARY TRIGGER trigger-name BEFORE | AFTER database-event ON database-name . table-nametrigger-action sql-statement := CREATE TEMP | TEMPORARY TRIGGER trigger-name INSTEAD OFdatabase-
9、event ON database-name . view-nametrigger-action database-event := DELETE | INSERT | UPDATE | UPDATE OF column-list trigger-action := FOR EACH ROW | FOR EACH STATEMENT &
10、#160; WHEN expression BEGIN trigger-step trigger-step *END trigger-step := update-statement | insert-statement | delete-statement | select-statement 例子:CREATE TRIGGER&
11、#160;update_customer_address UPDATE OF address ON customers BEGIN UPDATE orders SET address = new.address WHERE customer_name = ; END;说明:创建了一个名为update_customer_address的触发器
12、,当用户更新customers表中的address字段时,将触发并更新orders表中的address字段为新的值。比如执行如下一条语句:UPDATE customers SET address = '1 Main St.' WHERE name = 'Jack Jones'数据库将自动执行如下语句:UPDATE orders SET address = '1 Main
13、0;St.' WHERE customer_name = 'Jack Jones' 4.CREATE INDEX:为给定表或视图创建索引。语法:sql-statement := CREATE UNIQUE INDEX index-name ON database-name . table-name ( column-name , col
14、umn-name* ) ON CONFLICT conflict-algorithm column-name := name COLLATE collation-name ASC | DESC 例子:CREATE INDEX idx_email ON customers (email);说明:为customers表中的email创建一个名为idx_email的字段。
15、160; 二.结构删除 1.DROP TABLE:删除表定义及该表的所有索引。语法:sql-command := DROP TABLE database-name. table-name 例子:DROP TABLE customers; 2.DROP VIEW:删除一个视图。语法:sql-command := DROP VIE
16、W view-name 例子:DROP VIEW master_view; 3.DROP TRIGGER:删除一个触发器。语法:sql-statement := DROP TRIGGER database-name . trigger-name 例子:DROP TRIGGER update_customer_address; 4.DROP INDEX:
17、删除一个索引语法:sql-command := DROP INDEX database-name . index-name 例子:DROP INDEX idx_email; 三,数据操作 1.INSERT:将新行插入到表。 语法:sql-statement := INSERT OR conflict-algorithm INTO database-name
18、. table-name (column-list) VALUES(value-list) |INSERT OR conflict-algorithm INTO database-name . table-name (column-list) select-statement 2.UPDATE:更新表中的现有数据。 语法:sql-statement := UPDAT
19、E OR conflict-algorithm database-name . table-nameSET assignment , assignment*WHERE expr assignment := column-name = expr 3.DELETE:从表中删除行。 语法:sql-statement := DEL
20、ETE FROM database-name . table-name WHERE expr 4.SELECT:从表中检索数据。 语法:sql-statement := SELECT ALL | DISTINCT result FROM table-listWHERE exprGROUP BY expr-listHAVING
21、exprcompound-op select*ORDER BY sort-expr-listLIMIT integer ( OFFSET | , ) integer result := result-column , result-column* result-column := * | table-name . * | expr AS
22、 string table-list := table join-op table join-args* table := table-name AS alias |( select ) AS alias join-op := , | NATURAL LEFT | RIGHT | FULL OUTER
23、60;| INNER | CROSS JOIN join-args := ON expr USING ( id-list ) sort-expr-list := expr sort-order , expr sort-order* sort-order := COLLATE collation-name ASC
24、| DESC compound_op := UNION | UNION ALL | INTERSECT | EXCEPT 5.REPLACE:类似INSERT。 语法:sql-statement := REPLACE INTO database-name . table-name ( column-lis
25、t ) VALUES ( value-list ) |REPLACE INTO database-name . table-name ( column-list ) select-statement 四。事务处理 1.BEGIN TRANSACTION:标记一个事务的起始点。 语法:sql-statement
26、 := BEGIN TRANSACTION name 2.END TRANSACTION:标记一个事务的终止。 语法:sql-statement := END TRANSACTION name 3.COMMIT TRANSACTION:标志一个事务的结束。 语法:sql-statement := COMMIT
27、60;TRANSACTION name 4.ROLLBACK TRANSACTION:将事务回滚到事务的起点. 语法:sql-statement := ROLLBACK TRANSACTION name 五。其他操作 1.COPY:主要用于导入大量的数据。 语法:sql-statement := COPY OR conflict-algorithm database-name . table-name FROM filename USING DELIMITERS delim 例子:COPY customers FROM customers.csv; 2.ATTACH DATABASE:附加一个数据库到当
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 部编版四年级语文上册《语文园地七》教学设计
- 《碳资产管理服务指南》编制说明
- 《客户关系管理实务》电子教案 19商机管理
- 直肠与肛门狭窄病因介绍
- 国际金融学课件汇率理论与学说
- 甲减病因介绍
- 《语文下册识字》课件
- 养老照护机构长者康复训练服务流程1-1-1
- 2024年度留守儿童环保教育项目合同2篇
- (高考英语作文炼句)第55篇译文老师笔记
- 《中国心力衰竭诊断和治疗指南2024》解读(下)
- 图文印刷制作服务合同
- 四川省成都市2024-2025学年八年级上学期期中考试英语试卷(四)
- 黑龙江省行政职业能力测验真题2023年(联考)
- 2024年快开门式压力容器操作取证考试题库-上(单选、多选题)
- 弃土项目合作协议书范文模板
- 中国古代技术学习通超星期末考试答案章节答案2024年
- 2023-2024学年全国小学六年级上数学人教版期中考卷(含答案解析)
- 分析哲学学习通超星期末考试答案章节答案2024年
- 2024秋期国家开放大学本科《国际私法》一平台在线形考(形考任务1至5)试题及答案
- 建筑垃圾清理运输服务方案
评论
0/150
提交评论