利用Python模块进行数据库连接与操作
发布时间:2024-01-13 09:45:05
Python与数据库连接有很多种方法,可以使用标准库中的sqlite3模块,也可以使用第三方库如MySQLdb、psycopg2等。在本文中,我们将介绍使用标准库中的sqlite3模块进行数据库连接和操作的方法,并给出相应的使用例子。
1. 连接数据库
使用sqlite3模块连接数据库非常简单,只需要引入sqlite3模块,然后使用connect()方法连接数据库即可。
import sqlite3
# 连接数据库
conn = sqlite3.connect('test.db')
这里我们将数据库的文件保存为test.db,如果该文件不存在,sqlite3模块会自动创建它。
2. 创建数据表
连接到数据库之后,我们需要创建数据表来存储数据。可以使用execute()方法执行SQL语句来创建表。
# 创建表
conn.execute('''CREATE TABLE COMPANY
(ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR(50),
SALARY REAL);''')
上面的代码创建了一个名为COMPANY的表,包含ID、NAME、AGE、ADDRESS和SALARY这几个列。
3. 插入数据
插入数据是通过执行INSERT语句来实现的。
# 插入数据
conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
VALUES (1, 'Paul', 32, 'California', 20000.00 )");
conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
VALUES (2, 'Allen', 25, 'Texas', 15000.00 )");
conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
VALUES (3, 'Teddy', 23, 'Norway', 20000.00 )");
conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
VALUES (4, 'Mark', 25, 'Rich-Mond', 65000.00 )");
# 提交事务
conn.commit()
以上代码向COMPANY表插入了四条记录。
4. 查询数据
查询数据是通过执行SELECT语句来实现的。
# 查询数据
cursor = conn.execute("SELECT id, name, address, salary from COMPANY")
for row in cursor:
print("ID = ", row[0])
print("NAME = ", row[1])
print("ADDRESS = ", row[2])
print("SALARY = ", row[3], "
")
以上代码查询了COMPANY表的所有数据,并将结果打印出来。
5. 更新数据
更新数据是通过执行UPDATE语句来实现的。
# 更新数据
conn.execute("UPDATE COMPANY set SALARY = 25000.00 where ID = 1")
# 提交事务
conn.commit()
以上代码将ID为1的记录的SALARY字段更新为25000.00。
6. 删除数据
删除数据是通过执行DELETE语句来实现的。
# 删除数据
conn.execute("DELETE from COMPANY where ID = 2;")
# 提交事务
conn.commit()
以上代码删除了ID为2的记录。
7. 断开与数据库的连接
操作完成之后,需要使用close()方法断开与数据库的连接。
# 断开与数据库的连接 conn.close()
综上所述,利用Python模块进行数据库连接和操作非常简单。使用sqlite3模块可以连接SQLite数据库,使用标准库中的方法即可完成数据库的增删改查操作。当然,如果需要连接其他种类的数据库,可以选择适合的第三方库。
