使用Python操作SQL te数据库
郑伊雯 2023-07-08编程经验
Python操作SQL数据库简介Python是当今编程领域最受欢迎的语言之一,可以方便地连接和操作各种数据库,包括MySQL、PostgreSQL和SQLite等。Python通过不同
Python操作SQL数据库简介
Python是当今编程领域最受欢迎的语言之一,可以方便地连接和操作各种数据库,包括MySQL、PostgreSQL和SQLite等。Python通过不同的模块来连接和操作不同的数据库。对于SQL数据库,我们通常使用Python的pymysql、psycopg2和sqlite3模块。接下来我们将详细介绍如何使用Python来连接和操作SQL数据库。
Python操作MySQL数据表
MySQL是目前最受欢迎的RDMS。pymsql模块可以连接MySQL的数据库,并操作数据表。下面是连接和操作MySQL数据库的示例代码:
import pymysql
# 连接数据库
db = pymysql.connect(host='localhost', user='root', password='password', database='test_db', port=3306)
# 创建游标对象
cursor = db.cursor()
# 创建表
sql_create_table = '''CREATE TABLE IF NOT EXISTS `user` (
`id` INT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(16) NOT NULL,
`age` TINYINT NOT NULL,
`gender` ENUM('M', 'F') NOT NULL,
`email` VARCHAR(32) NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8'''
cursor.execute(sql_create_table)
# 插入数据
sql_insert_data = "INSERT INTO `user`(`name`, `age`, `gender`, `email`) VALUES ('张三', 20, 'M', 'zhangsan@xx.com')"
cursor.execute(sql_insert_data)
db.commit()
# 查询数据
sql_select_data = "SELECT * FROM `user`"
cursor.execute(sql_select_data)
res = cursor.fetchall()
print(res)
# 关闭游标和数据库连接
cursor.close()
db.close()
Python操作PostgreSQL数据库
Python可以连接和操作PostgreSQL数据库。psycopg2模块提供了连接PostgreSQL数据库的工具。下面是连接和操作PostgreSQL数据库的示例代码:
import psycopg2
# 连接到数据库
conn = psycopg2.connect(
host="localhost",
database="test_db",
user="postgres",
password="password",
port="5432"
)
# 创建游标对象
cur = conn.cursor()
# 创建表
sql_create_table = '''CREATE TABLE IF NOT EXISTS "user" (
"id" SERIAL PRIMARY KEY,
"name" VARCHAR(16) NOT NULL,
"age" SMALLINT NOT NULL,
"gender" CHAR(1) NOT NULL,
"email" VARCHAR(32) NULL
);'''
cur.execute(sql_create_table)
# 插入数据
sql_insert_data = "INSERT INTO \"user\"(\"name\", \"age\", \"gender\", \"email\") VALUES ('李四', 25, 'M', 'lisi@xx.com')"
cur.execute(sql_insert_data)
conn.commit()
# 查询数据
sql_select_data = "SELECT * FROM \"user\""
cur.execute(sql_select_data)
res = cur.fetchall()
print(res)
# 关闭游标和数据库连接
cur.close()
conn.close()
Python操作SQLite数据库
Python也可以使用标准库sqlite3来连接和操作SQLite数据库。SQLite是嵌入式数据库,不需要一个单独的服务器进程,可以在本地直接创建数据库。下面是创建和操作SQLite数据库的示例代码:
import sqlite3
# 连接数据库
conn = sqlite3.connect('test.db')
# 创建游标对象
cursor = conn.cursor()
# 创建表
sql_create_table = '''CREATE TABLE IF NOT EXISTS user (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
age INTEGER NOT NULL,
gender TEXT NOT NULL,
email TEXT NULL
);'''
cursor.execute(sql_create_table)
# 插入数据
sql_insert_data = "INSERT INTO user(name,age,gender,email) VALUES ('王五', 22, 'M', 'wangwu@xx.com')"
cursor.execute(sql_insert_data)
conn.commit()
# 查询数据
sql_select_data = "SELECT * FROM user"
cursor.execute(sql_select_data)
res = cursor.fetchall()
print(res)
# 关闭游标和数据库连接
cursor.close()
conn.close()
很赞哦! ()