查看数据库列表
[[email protected].io]# sqlite3
sqlite> .databases
main: "" r/w
查看所有表名及字段名
[[email protected].io]# sqlite3
# 查询有哪些表
sqlite> .tables
sqlite> select name from sqlite_master where type='table' order by name;
# 查询出某个表的所有字段信息
sqlite> PRAGMA table_info([tablename])
查看表的结构
[[email protected].io]# sqlite3
sqlite> .schema tag
CREATE TABLE tag( id INTEGER primary key autoincrement, name TEXT, monkeyID TEXT);
查询某张表是否存在
SELECT COUNT(*) FROM sqlite_master where type='table' and name='表名'
创建自增ID
INTEGER PRIMARY KEY AUTO_INCREMENT
表增删改查
创建一个表:
# 创建一张表
CREATE TABLE contacts (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL COLLATE NOCASE,
phone TEXT NOT NULL DEFAULT 'UNKNOWN',
UNIQUE (name,phone)
);
删除一个表
# 删除一张表
DROP TABLE contacts
# 修改一张表
## 修改表名
ALTER TABLE post RENAME TO tmp_post;
## 增加一列
ALTER TABLE contacts ADD COLUMN DisplayOrder INT DEFAULT(0)
增加字段
ALTER TABLE tag ADD COLUMN monkeyID TEXT NOT NULL default '';
删除和修改字段都得通过重做表来实现
数据增删改查
# 插入数据
INSERT INTO table(col1, col2, col3) VALUES('1', '2', '3');
# 删除数据
DELTE FROM table WHERE id = 1;
# 修改数据
UPDATE table SET col1='2' WHERE id=1;
# 查询数据
SELECT id, col1 FROM table WHERE id = 1;
Python 操作 Sqlite3
# 打开连接
conn = sqlite3.connect('./db.sqlite3')
# 打开游标
c = conn.cursor()
# 执行 SQL
c.execute( SELECT * FROM TABLE)
# 获取结果
c.fetchall()