Python数据库函数:使用sqlite3库实现简单的关系型数据库操作
在Python中,关系型数据库是非常常见和重要的一种数据存储方式。使用sqlite3库可以实现Python对关系型数据库的操作。sqlite3库是Python的标准库之一,可以实现SQL语句的执行以及表的创建,记录的插入、删除、修改和查询等。
一、创建数据库和表格
使用sqlite3库创建数据库和表格非常简单,只要调用sqlite3库并执行SQL语句即可。
import sqlite3
#连接数据库
conn = sqlite3.connect('mytest.db')
#创建表
conn.execute('''CREATE TABLE student
(ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR(50),
SEX CHAR(10));''')
print("Table created successfully")
以上程序建立了一个名为mytest.db的数据库,其中包含一个名为student的表。表的字段分别为ID、NAME、AGE、ADDRESS、SEX。
二、插入数据
插入数据使用SQL的INSERT INTO语句完成。可以通过execute()方法执行SQL文件,并给定具体的数值,即可完成记录的添加。
#插入数据
conn.execute("INSERT INTO student (ID,NAME,AGE,ADDRESS,SEX) \
VALUES (1, 'Lucy', 20, 'Shanghai', 'Female')")
conn.execute("INSERT INTO student (ID,NAME,AGE,ADDRESS,SEX) \
VALUES (2, 'Tom', 21, 'Beijing', 'Male')")
conn.execute("INSERT INTO student (ID,NAME,AGE,ADDRESS,SEX) \
VALUES (3, 'Mary', 20, 'New York', 'Male')")
conn.execute("INSERT INTO student (ID,NAME,AGE,ADDRESS,SEX) \
VALUES (4, 'Peter', 21, 'London', 'Male')")
conn.commit()
print("Values insert successfully")
以上程序插入了4条记录,分别是Lucy、Tom、Mary、Peter,他们的年龄、地址、性别等都有所不同。
三、查询数据
查询数据使用SQL的SELECT语句实现。可以使用fetchall()方法读取所有查询结果,或者使用fetchone()方法读取单个查询结果。
#查询数据
cursor = conn.execute("SELECT ID, NAME, AGE, ADDRESS, SEX from student")
for row in cursor:
print("ID = ", row[0])
print("NAME = ", row[1])
print("AGE = ", row[2])
print("ADDRESS = ", row[3])
print("SEX = ", row[4], "
")
以上程序查询了student表中所有记录,并打印到控制台上。
四、修改和删除数据
修改和删除数据使用SQL的UPDATE和DELETE语句实现。使用execute()方法给定具体参数,即可完成记录的修改和删除。
#修改数据
conn.execute("UPDATE student SET ADDRESS = 'New York' where ID = 3")
conn.commit()
print("total number of rows updated: ", conn.total_changes)
#删除数据
conn.execute("DELETE from student where ID = 4;")
conn.commit()
print("total number of rows deleted: ", conn.total_changes)
以上程序将表中ID为3的记录的地址从“New York”修改为“Tokey”,并撤销表中ID为4的一行。
五、关闭数据库
关闭数据库非常重要,可以使用关闭()方法完成数据库的关闭。
#关闭数据库
conn.close()
print("Database closed")
总结来看,使用sqlite3库可以实现Python对关系型数据库的操作。可以通过简单的SQL语句实现表的创建,记录的插入、删除、修改和查询等操作。sqlite3库作为Python的标准库之一,在Python的开发中有着广泛的应用。
