SQLite3学习笔记(1)

命令:sql

DDL-数据定义:数据库

CREATE -- 建立一个新的表,一个表的视图,或者数据库中的其余对象ide

ALTER -- 修改数据库中的某个已有的数据对象,好比一个表ui

DROP -- 删除整个表,或者表的视图,或者数据库中的其余对象编码

DML - 数据操做:spa

INSERT -- 建立一条记录命令行

UPDATE -- 修改记录code

DELETE -- 删除记录sqlite

DQL - 数据查询:对象

SELECT -- 从一个或多个表中检索某些记录

 


 

可使用 . help 命令来获取各类重要的SQLite 点命令的列表;

可使用 .show 命令来获取SQLite命令提示符的默认设置;

sqlite> .show
        echo: off
         eqp: off
     explain: auto
     headers: off
        mode: list
   nullvalue: ""
      output: stdout
colseparator: "|"
rowseparator: "\n"
       stats: off
       width:
    filename: :memory:
.show

 

也可使用属性的方法改变设置

sqlite>.header on
sqlite>.mode column
sqlite>.timer on
View Code

 

SQLite 存储类:

NULL 值是一个 NULL 值
INTEGER 值是一个带符号的整数根据值的大小,存储在 一、二、三、四、6 或 8 字节中。
REAL 值是一个浮点值,存储为 8 字节的 IEEE 浮点数字。
TEXT 值是一个文本字符串,使用数据库编码(UTF-八、UTF-16BE 或 UTF-16LE)存储。
BLOB

值是一个 blob 数据,彻底根据它的输入存储。



 

使用命令 sqlite3 testDB.db 来建立一个新的数据库

E:\SQLite3>sqlite3 testDB.db
SQLite version 3.25.0 2018-09-15 04:01:47
Enter ".help" for usage hints.

 

一旦数据库被建立,就可使用 .databases 命令来查看它是否在数据库列表中

sqlite> .databases
main: E:\SQLite3\testDB.db

 

可使用 .quit 命令退出 sqlite提示符

sqlite> .quit

E:\SQLite3>

 

能够在命令行中使用 SQLite.dump 点命令来导出完整的数据库在一个文本文件中

E:\SQLite3>sqlite3 testDB.db .dump > testDB.sql

 

上面的命令将转换整个 testDB.db 数据库的内容到 SQLite 的语句中,并将其转储到 testDB.sql 中。你能够经过简单的方式从生产的testDB.db 恢复

E:\SQLite3>sqlite3 testDB.db < testDB.sql

 

此时的数据库是空的,一旦数据库中有表和数据,能够进行尝试。

 


 

若是想要附加一个现有的数据库 testDB.db ,则 ATTACH DATABASE 语句将以下所示

sqlite> ATTACH DATABASE 'testDB.db' as 'TEST';

 

使用 .database 命令来显示附加的数据库

sqlite> .database
main:
TEST: E:\SQLite3\testDB.db

 

数据库名称 main 和temp 被保留用于主数据库和存储临时表及其它临时数据对象的数据库。这两个数据库名称能够用于每一个数据库链接,且不该该被用于附加,不然将获得一个警告消息。

 


 

SQLite的 DETACH DTABASE 语句是用来把命名数据库从一个数据库链接分离和游离出来,链接是以前使用 ATTACH 语句附加的。若是同一个数据库文件已经被附加上多个别名,DETACH 命令将只断开给定名称的链接,而其他的仍然有效。您没法分离 main 或 temp 数据库。

若是数据库是在内存中或者是临时数据库,则该数据库将被摧毁,且内容将会丢失。

SQLite 的 DETACH DATABASE 的基本语句的基本语法以下:

DETACH DATABASE 'Alias-Name';

 

假设已经建立一个数据库并给他附加了‘TEST’ 和 ‘XING',使用.database 命令,咱们能够看到以下:

main:
TEST: E:\SQLite3\testDB.db
XING: E:\SQLite3\testDB.db

 

如今尝试把'XING' 从 testDB.db 中分离出来,以下:

sqlite> DETACH DATABASE 'XING';

 

若是如今再次检查,会发现testDB.db 任与 main 保持链接

sqlite> .database
main:
TEST: E:\SQLite3\testDB.db
相关文章
相关标签/搜索