如何使用Python操作SQLite详解编程语言
一.创建数据库及表
首先,创建数据库,以及数据库中的表。在使用connect()连接数据库后,就可以通过定位指针cursor,来执行SQL命令:
import itxm
conn = itxm.connect( test.db )
cur = conn.cursor()
cur.execute( CREATE TABLE category
(id int primary key, sort int, name text) )
cur.execute( CREATE TABLE book
(id int primary key,
sort int,
name text,
price real,
category int,
FOREIGN KEY (category) REFERENCES category(id)) )
conn.commit()
conn.close()
二.插入数据
import itxm
conn = itxm.connect( test.db )
cur = conn.cursor()
books = [(1, 1, Cook Recipe , 3.12, 1),
(2, 3, Python Intro , 17.5, 2),
(3, 2, OS Intro , 13.6, 2),
]
cur.execute( INSERT INTO category VALUES (1, 1, kitchen ) )
cur.execute( INSERT INTO category VALUES (?, ?, ?) , [(2, 2, computer )])
cur.executemany( INSERT INTO book VALUES (?, ?, ?, ?, ?) , books)
conn.commit()
conn.close()
SQL语句中的参数,使用”?”作为替代符号,并在后面的参数中给出具体值。这里不建议用Python的格式化字符串,如”%s”,因为这一用法容易受到SQL注入攻击。
也可以用executemany()的方法来执行多次插入,增加多个记录。每个记录是表中的一个元素,如上面的books表中的元素。
三.查询
import itxm
conn = itxm.connect( test.db )
cur = conn.cursor()
cur.execute( SELECT name FROM category ORDER BY sort )
print(cur.fetchone())
print(cur.fetchone())
cur.execute( SELECT * FROM book WHERE book.category=1 )
print(cur.fetchall())
for row in cur.execute( SELECT name, price FROM book ORDER BY sort ):
print(row)
四.更新与删除
可以更新某个记录,或者删除记录:
conn = itxm.connect( test.db )
cur = conn.cursor()
cur.execute( UPDATE book SET price=? WHERE id=? ,(1000, 1))
cur.execute( DELETE FROM book WHERE id=2 )
conn.commit()
conn.close()
也可以直接删除整张表:
cur.execute( DROP TABLE book )
如果删除test.db,那么整个数据库会被删除。
转载请注明来源网站:blog.ytso.com谢谢!
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/14622.html
cgopython相关文章
- pycharm导入Python_python简单项目
- python skitlearn_Python sklearn
- python字符串转化列表_Python列表到字符串的转换[通俗易懂]
- python中bool函数_bool()函数以及Python中的示例
- python教程:用简单的Python编写Web应用程序
- Python – 0b、0o、0x
- python 查tensorflow版本_如何查看tensorflow的版本「建议收藏」
- Python抓取数据_python抓取游戏数据
- 【说站】python九宫格图片的原理
- python chmod_Python os.chmod用法及代码示例
- Python抛出异常_python抛出异常的作用
- python图层合并_Photoshop_【批量将同一背景与不同的上层合并图层的技巧】导出+Python3.X实现…[通俗易懂]
- Python实现SQLite数据库全备份与增量备份
- uwsgi 配置 python virtualenv 虚拟环境目录 ( ini 配置)
- 初识Python面向对象
- python-Python与MySQL数据库-使用Python执行MySQL查询
- python-Python与SQLite数据库-使用Python执行SQLite查询(一)
- python-Python与SQLite数据库-使用Python执行SQLite查询(二)
- python-Python与SQLite数据库-处理SQLite查询结果(一)
- python多线程ping和arpping扫描工具详解编程语言
- python删除源文件中的注释并编译详解编程语言
- python操作sqlite的CRUD详解编程语言
- Python输出函数print()总结(python print())详解编程语言
- Python if…elif…else语句
- Python编码时应该注意的几个情况