SQLite在python3中的应用

创建/连接数据库

import sqlite3
conn = sqlite3.connect('example.db')  
cursor = conn.cursor()

建立一张叫user的表

cursor.execute('create table user(id varchar(20) primary key, name verchar(20), password verchar(20), rights int)')  

插入行

cursor.execute(r"insert into user values ('A00001', 'Adam', 'A00001', 0)")
cursor.execute(r"insert into user values ('A00002', 'Bart', 'A00002', 2)")
cursor.execute(r"insert into user values ('A00003', 'Lisa', 'A00003', 1)")
mess = [a, b, c, d]
cursor.execute(r"insert into user values (?, ?, ?, ?)", mess)

查询

t = cursor.execute('select * from user where user.name!="Lisa"')  
for row in t:
    print(row)
# 输出:
# ('A00001', 'Adam', 'A00001', 0)
# ('A00002', 'Bart', 'A00002', 2)

修改了表之后要commit

conn.commit()

做完了你要做的要close

cursor.close()
conn.close()

修改数据

cursor.execute("update user set name=? where id=?", ('Maya', id))

删除一行

cursor.execute('delete from user where id=?', id)

更新表

cursor.execute("alter table table_name add clum type")

说明:ALTER TABLE和SQLite SQLite对使用ALTER TABLE执行的操作有所限制。最重要的一个限制是,它不支持使用ALTER TABLE定义主键和外键,这些必须在最初创建表 时指定。

通配符

最常使用的通配符是百分号(%)。在搜索串中,%表示任何字符出现任意次数。

cursor.execute("select * from user where name like 'H%'")
cursor.execute("select * from doc where name like ? and new=1", (name, ))

我用pycharm建的数据库不知道为什么是只读的,用sqlitestudio建的就没什么问题。

你可能感兴趣的:(SQLite在python3中的应用)