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建的就没什么问题。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 那些女孩与三步篮 那些男孩与不羁的笑 那些女孩僵硬的动作 那些男孩响亮的口哨 那些如金子般闪闪发亮的叶子 那些亘古...
    乌尼尤阅读 1,521评论 0 0
  • 《问神录》片段
    Ninahuang阅读 2,900评论 1 2
  • 知乎上有个关于QQ的热门话题:QQ有哪些让你怀念的地方?短短的问题吸引了669人关注,得到了246条回复。其中获赞...
    那一座城阅读 13,121评论 22 63
  • 秋风起,黄叶落 为何无力挽留 曾希望,你能喜欢我 狂风你我共度过 还有闪电的足迹 幸福的季节此刻别离 我仍是我,恋...
    风霖文字阅读 1,274评论 1 1
  • 隆诗大婚的事儿恐怕是开年之出最沸腾的话题。 早在大婚前,四爷便阔气地说,自己平时一向节俭,但婚礼预算无上限。 一诺...
    颗粒crown阅读 4,221评论 0 3