SQLite常见的SQL命令

0、 引言

有了sqlite数据库,本节将总结以下常用的sql命令,本质上来说对于所有的数据库来说,sql命令都是基本一致的。因此此处仅仅用sqlite作为工具来总结一下

1、 创建数据库

创建数据库很简单,只需要执行

testDB.db```命令既可以。
1
2
3
4
5
6
```
C:\sqlite\test>sqlite3 testDB.db
SQLite version 3.19.2 2017-05-25 16:50:27
Enter ".help" for usage hints.
sqlite> .database
main: C:\sqlite\test\testDB.db

2、 创建表

创建完了数据库,如果没有表结构什么的,那么这个数据库也是没有什么用的,因为空的东西总是不够真实的,创建表则需要下面的命令

1
2
3
4
sqlite> create table tbl_User(ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,AGE
INT NOT NULL,
PWD CHAR(50) NOT NULL);

我们可以使用.table命令查看表是否创建成功

1
2
sqlite> .table
tbl_Group tbl_User

然后可以使用.schema命令查看表的结构

1
2
3
4
5
6
7
sqlite> .schema tbl_User
CREATE TABLE tbl_User(ID INT PRIMARY KEY NOT NULL,NAME TEXT NOT NULL,AGE INT NOT
NULL,PWD CHAR(50) NOT NULL);
sqlite> .schema tbl_Group
CREATE TABLE tbl_Group(ID INT NOT NULL,NAME TEXT NOT NULL,USERID INT NOT NULL,DE
SC TEXT);
sqlite>

3、 删除表

删除表则只需要用下面的drop命令即可

1
2
3
4
5
sqlite> .table
tbl_ACC tbl_Group tbl_User
sqlite> drop table tbl_ACC;
sqlite> .table
tbl_Group tbl_User

4、插入数据

创建完了新的表后需要向表内插入数据,这里用insert语句

1
sqlite> insert into tbl_User(ID,NAME,AGE,PWD) values (1,'Ahmed',30,'Test1234');

或者是已下面的方式来插入数据

1
sqlite> insert into tbl_User values(2,'Bob',20,'Test123');

插入数据库,我们需要查看这些数据是否已经正确插入了,那么久需要select语句了

5、 查询语句

这里为了显示的好看,我们可以首先设置一下语句的输出格式,上一章节总结过的

1
2
3
4
5
6
7
sqlite> .header on
sqlite> .mode colum
sqlite> select * from tbl_User;
ID NAME AGE PWD
---------- ---------- ---------- ----------
1 Ahmed 30 Test1234
2 Bob 20 Test123

完美
这里我们的数据比较少,则直接用select * 查找就会非常的方便,但是如果我们的数据量很大的时候,就需要用where以及一些逻辑判断语句等进行条件查找了,如下所示

1
2
3
4
sqlite> select NAME from tbl_User where ID =1;
NAME
----------
Ahmed

6、 更新语句

1
sqlite> update tbl_User set AGE=19 where ID=3;

实际的运行结果如下所示

1
2
3
4
5
6
7
8
9
10
11
12
13
sqlite> select * from tbl_User;
ID NAME AGE PWD
---------- ---------- ---------- ----------
1 Ahmed 30 Test1234
2 Bob 20 Test123
3 Cristina 18 Test12
sqlite> update tbl_User set AGE=19 where ID=3;
sqlite> select * from tbl_User ;
ID NAME AGE PWD
---------- ---------- ---------- ----------
1 Ahmed 30 Test1234
2 Bob 20 Test123
3 Cristina 19 Test12

7、 delete语句

1
2
3
4
5
6
sqlite> delete from tbl_User where ID = 3;
sqlite> select * from tbl_User;
ID NAME AGE PWD
---------- ---------- ---------- ----------
1 Ahmed 30 Test1234
2 Bob 20 Test123

8、 导出数据库

为什么这里才想起来dump命令导出数据库呢?原因很简单,就是先用上面的命令给表里插入些数据,有点懒。

1
C:\sqlite\test>sqlite3 testDB.db .dump>testDB.sql

那么这里面的数据是个什么样子的呢,如下所示:

1
2
3
4
5
6
7
8
9
10
C:\sqlite\test>more testDB.sql
PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
CREATE TABLE tbl_User(ID INT PRIMARY KEY NOT NULL,NAME TEXT NOT NULL,AGE INT NOT
NULL,PWD CHAR(50) NOT NULL);
INSERT INTO tbl_User VALUES(1,'Ahmed',30,'Test1234');
INSERT INTO tbl_User VALUES(2,'Bob',20,'Test123');
CREATE TABLE tbl_Group(ID INT NOT NULL,NAME TEXT NOT NULL,USERID INT NOT NULL,DE
SC TEXT);
COMMIT;

9、 总结

本节都是常用的SQL命令在sqlite上的应用,比较简单清晰,如果了解SQL语句,那么本章就是小菜一碟了。

显示 Gitment 评论