前言
常见的数据库有Oracle、MySQL、SQLserver等,相应的数据库也为python提供了对应的API接口,方便调用。当然在Python中有内置好了基本的sqlite3这个模块,供我们直接使用,这个已经基本满足我们的基本学习使用,其它的sql库对应的使用也基本一致,只是在一些语法上有所区别。想要进一步学习的同学,可以啃一下对应的官方文档。我这边简短地介绍基本的创建表和增删改查。
一、sqlite3使用基本流程
1、建立连接conn = sqlite3.connect('sqlTest.db')
2、创建光标cursor = conn.cursor()
3、执行SQL语句,实现相应的需求,比如增删改查。这里以创建基本表为例 createSql = "create table persons (id int(10) primary key,name varchar(10))"
cursor.execute(createSql)
4、提交执行语句 conn.commit()
5、关闭光标和连接
cursor.close()
conn.close()
二、源码
这里我们直接给出一个示例,实现创建表和相应的增删改查,具体的解释见注释。
import sqlite3
"""sqlite3 模块的简单运用"""
# 1、建立sqlTest.db数据库连接
conn = sqlite3.connect('sqlTest.db')
# 2、光标创建
cursor = conn.cursor()
try:
# 3、执行SQL语句 实现简单的创建表 增删改查基本操作
# ①创建teachers表
createSql = "create table persons (id int(10) primary key,name varchar(10))"
cursor.execute(createSql)
# ②添加数据
insertSql = "insert into persons(id,name) values(1,'张三丰')"
cursor.execute(insertSql)
insertSql = "insert into persons(id,name) values(2,'郭 襄')"
cursor.execute(insertSql)
insertSql = "insert into persons(id,name) values(3,'张无忌')"
cursor.execute(insertSql)
insertSql = "insert into persons(id,name) values(4,'周芷若')"
cursor.execute(insertSql)
# ③查询数据
selectSql = "select * from persons"
cursor.execute(selectSql)
print("所创建表的数据:")
datas = cursor.fetchall()
for data in datas:
print("No.%d\tName:%s" % data)
# ④改数据
updateSql = "update persons set name = '赵 敏' where id = 4 "
cursor.execute(updateSql)
sql = "select id,name from persons where id = 4"
cursor.execute(sql)
data = cursor.fetchall()
print("\n已将No.%d的名字改为%s" % (data[0][0],data[0][1]))
print("修改后\t表的数据为:")
cursor.execute(selectSql)
datas = cursor.fetchall()
for data in datas:
print("No.%d\tName:%s" % data)
# ⑤删除数据
deleteSql = "delete from persons where id = 1"
cursor.execute(deleteSql)
print("\n删除后\t表的数据为:")
cursor.execute(selectSql)
datas = cursor.fetchall()
for data in datas:
print("No.%d\tName:%s" % data)
except Exception as e:
print(e)
else:
# 4、提交sql语句
conn.commit()
finally:
# 5、关闭光标和连接
cursor.close()
conn.close()