python操作MYSQL数据库主要有3种方式:

  1. 使用原生模块:pymysql
  2. 使用MySQL官方提供的驱动器:mysql-connector
  3. ORM框架:SQLAchemy

使用pymysql模块

PyMySQL安装 在使用PyMySQL之前,我们需要确保PyMySQL已安装。

PyMySQL下载地址:https://github.com/PyMySQL/PyMySQL

如果还未安装,我们可以使用以下命令安装最新版的 PyMySQL: pip install PyMySQL

例如,链接数据库。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# 导入pymysql模块
import pymysql

# 连接database
conn = pymysql.connect(
    host=“你的数据库地址”,
    user=“用户名”,password=“密码”,
    database=“数据库名”,
    charset=utf8)

# 得到一个可以执行SQL语句的光标对象
cursor = conn.cursor()  # 执行完毕返回的结果集默认以元组显示
# 得到一个可以执行SQL语句并且将结果作为字典返回的游标
#cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)

# 定义要执行的SQL语句
sql = """
CREATE TABLE USER1 (
id INT auto_increment PRIMARY KEY ,
name CHAR(10) NOT NULL UNIQUE,
age TINYINT NOT NULL
)ENGINE=innodb DEFAULT CHARSET=utf8;  #注意:charset='utf8' 不能写成utf-8
"""

# 执行SQL语句
cursor.execute(sql)

# 关闭光标对象
cursor.close()

# 关闭数据库连接
conn.close()

使用mysql-connector

使用 pip 命令来安装 mysql-connector:
pip install mysql-connector

使用以下代码测试 mysql-connector 是否安装成功:
import mysql.connector
执行以上代码,如果没有产生错误,表明安装成功。

创建数据库连接
使用connect方法来创建数据库的连接。

例如:

1
2
3
4
5
6
7
8
9
import mysql.connector

mydb = mysql.connector.connect(
    host="localhost",       # 数据库主机地址
    user="yourusername",    # 数据库用户名
    passwd="yourpassword"   # 数据库密码
)

print(mydb)

创建数据库
创建数据库使用 “CREATE DATABASE” 语句,以下创建一个名为 runoob_db 的数据库:

例如:

1
2
3
4
5
6
7
8
9
import mysql.connector
mydb = mysql.connector.connect(
    host="localhost",
    user="root",
    passwd="123456"
)

mycursor = mydb.cursor()
mycursor.execute("CREATE DATABASE runoob_db")

ORM
面向对象编程和关系型数据库,都是目前最流行的技术,但是它们的模型是不一样的。

面向对象编程把所有实体看成对象(object),关系型数据库则是采用实体之间的关系(relation)连接数据。很早就有人提出,关系也可以用对象表达,这样的话,就能使用面向对象编程,来操作关系型数据库。

简单说,ORM就是通过实例对象的语法,完成关系型数据库的操作的技术,是”对象-关系映射”(Object/Relational Mapping) 的缩写。

ORM 把数据库映射成对象。

映射关系如下:
数据库的表(table) –> 类(class)
记录(record,行数据)–> 对象(object)
字段(field)–> 对象的属性(attribute)


转载请注明本网址。