Python & MySQL
基础使用
pymysql
安装:pip install pymysql
创建到MySQL的数据库链接
from pymysql import Connection
# 获取到MySQL数据库的链接对象
conn = Connection(
host='localhost', # 主机名
port=3306, # 端口 默认3306
user='root', # 账户名
password ='123456' # 密码
)
# 打印MySQL数据库软件信息
print(conn.get_server_info())
# 关闭到数据库的链接
conn.close()
执行SQL语句
执行非查询性质
from pymysql import Connection
# 获取到MySQL数据库的链接对象
conn = Connection(
host='localhost', # 主机名
port=3306, # 端口 默认3306
user='root', # 账户名
password ='123456' # 密码
)
# 获取游标对象
cursor = conn.cursor()
conn.select_db("test") # 先选数据库
# 使用游标对象,执行sql语句
cursor.execute("CREATE TABLE test_pymysql(id INT, info VARCHAR(255))")
# 关闭到数据库的链接
conn.close()
执行查询性质
from pymysql import Connection
# 获取到MySQL数据库的链接对象
conn = Connection(
host='localhost', # 主机名
port=3306, # 端口 默认3306
user='root', # 账户名
password ='123456' # 密码
)
# 获取游标对象
cursor = conn.cursor()
conn.select_db("test") # 先选数据库
# 使用游标对象,执行sql语句
cursor.execute("SELECT * FROM student")
# 获取查询结果
results: tuple = cursor.fetchall()
for r in results:
print(r)
# 关闭到数据库的链接
conn.close()
数据插入
掌握Python执行SQL语句插入数据到MySQL
commit提交
from pymysql import Connection
# 获取到MySQL数据库的链接对象
conn = Connection(
host='localhost', # 主机名
port=3306, # 端口 默认3306
user='root', # 账户名
password ='123456' # 密码
)
# 执行非查询性质SQL
cursor = conn.cursor() # 获取游标对象
# 先选数据库
conn.select_db("world")
# 执行sql语句
cursor.execute("insert into student values(10001,'周杰轮',31,'男')")
# 关闭到数据库的链接
conn.close()
如上代码是无法将数据插入到数据表中的
pymysql在执行数据插入或其它产生数据更改的SQL语句时,默认是需要提交更改的
即需要通过代码确认这种更改行为
通过链接对象.commit()即可确认此行为
自动commit
# 如果不想收到commit确认,可以在构建链接对象的时候,设置自动commit的属性
conn = Connection(
host='localhost', # 主机名
port=3306, # 端口 默认3306
user='root', # 账户名
password ='123456', # 密码
autocommit = True # 设置自动提交
)
评论(已关闭)
评论已关闭