SQLite是一个轻量级的SQL数据库,它实现了一个独立的、无服务器的、零配置的事务性SQL数据库引擎。除了一些命令外,sqlite使用的命令语法与mysql、oracle使用的类似,本篇文章将介绍如何使用命令行来使用sqlite数据库。

SQLite3 sql命令行怎么使用?-LMLPHP

1、创建SQLite数据库

SQLite提供了一个简单的命令来创建数据库。使用以下命令创建sqlite数据库。

# sqlite3 admin.db
登录后复制

基本上,sqlite数据库是在当前工作目录中创建的文件。

# ls -l admin.db
-rw-r--r--. 1 root root 3072 May 11 14:32 admin.db
登录后复制

2.在SQLite数据库中创建表

创建数据库后,我们创建表。使用以下查询在数据库admin.db中创建两个表(users, posts )。

# sqlite3 admin.db
sqlite> create table users(uid integer,uname varchar(60),category varchar(50));
sqlite> create table posts(postid integer,postname varchar(50),content varchar(1000));
sqlite> create table tmp(id integer,tname varchar(50);
sqlite> .quit
登录后复制

3.在SQLite中列出或删除表

要仅在SQLite数据库中列出表名,只需使用以下命令。

sqlite> .tables
posts  tmp    users
登录后复制

如果需要删除任何表,可以使用以下命令执行此操作,如下所示。

#drop table <tablename>; 
#drop table if exists <tablename>;
#drop table tmp; 
#drop table if tmp;
登录后复制

4.在表格中插入数据

以下命令用于通过SQLite提示在SQLite数据库中插入数据。

sqlite> INSERT INTO posts VALUES(1, 'Post 1','this is demo post 1');
sqlite> INSERT INTO posts VALUES(2, 'Post 2','this is demo post 2');
sqlite> INSERT INTO users VALUES(1,'Harry','staff');
sqlite> INSERT INTO users VALUES(2,'Rahul','Admin');
登录后复制

还可以执行文件中包含的一组命令。

# vi data.sql
INSERT INTO posts VALUES(10, 'Sample Post 10','this is sample post 10');
INSERT INTO posts VALUES(11, 'Sample Post 11','this is sample post 11');
INSERT INTO users VALUES(10,'Sarah','Support');
INSERT INTO users VALUES(11,'Nick','Sales');
登录后复制

以下命令将执行admin.db数据库中data.sql的所有命令。

# sqlite3 admin.db < data.sql
登录后复制

5.从表中获取数据

使用SELECT命令查看SQLite数据库中表的数据,如下例所示。

sqlite> SELECT * FROM users;
1|Harry|staff
2|Rahul|Admin
10|Sarah|Support
11|Nick|Sales

sqlite> SELECT * FROM posts;
1|Post 1|this is demo post 1
2|Post 2|this is demo post 2
10|Sample Post 10|this is sample post 10
11|Sample Post 11|this is sample post 11

sqlite> SELECT * FROM posts WHERE postid = 1;
1|Post 1|this is demo post 1
登录后复制

6.更改输出格式

SQLite3以八种不同的格式显示查询结果:“csv”,“column”,“html”,“insert”,“line”,“list”,“tabs”和“tcl”。使用“.mode”命令可以更改输出格式。默认输出格式为“list”。

sqlite> .mode line
sqlite> select * from users;
     uid = 1
   uname = Harry
category = staff

     uid = 2
   uname = Rahul
category = Admin
登录后复制
sqlite> .mode column
sqlite> select * from users;
1           Harry       staff
2           Rahul       Admin
10          Sarah       Support
11          Nick        Sales
登录后复制

7.将SQLite数据库转换为ASCII文本文件

可以使用“.dump”命令将SQLite数据库简单地转换为纯文本文件。使用以下命令执行。

# sqlite3 admin.db '.dump' > backup.dump
登录后复制

要从ASCII文件backup.dump重建SQLite数据库,只需输入:

#cat backup.dump | sqlite3 admin-1.db
登录后复制

以上就是SQLite3 sql命令行怎么使用?的详细内容,更多请关注Work网其它相关文章!

08-31 04:05