Python操作MySQL

1、pip install pymysql

2、

coding:UTF-8

import traceback, pymysql # pip install pymysql

def main(): # 主函数

try:

conn = pymysql.connect(host="localhost", port=3306, charset="UTF8", user="root", password="mysqladmin",

database="yootk") # 数据库连接

print("MySQL数据库连接成功,当前的数据库版本为:%s" % conn.get_server_info())

print("MySQL数据库连接成功,事务提交模式:%s" % conn.get_autocommit())

except Exception:

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

3、

coding:UTF-8

import traceback, pymysql # pip install pymysql

def main(): # 主函数

try:

conn = pymysql.connect(host="localhost", port=3306, charset="UTF8", user="root", passwd="mysqladmin",

database="yootk") # 数据库连接

print("MySQL数据库连接成功,当前的数据库版本为:%s" % conn.get_server_info())

print("MySQL数据库连接成功,事务提交模式:%s" % conn.get_autocommit())

except Exception:

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

4、

coding:UTF-8

import traceback, pymysql # pip install pymysql

传统的pymysql组件支持的是原生的SQL

SQL = "INSERT INTO user(name,age,birthday,salary,note) VALUES ('小李老师', 18, '2010-09-19', 8000.0, 'www.yootk.com')"

def main(): # 主函数

try:

conn = pymysql.connect(host="localhost", port=3306, charset="UTF8", user="root", passwd="mysqladmin",

database="yootk") # 数据库连接

cmd = conn.cursor() # 获得一个数据库的操作对象

cmd.execute(SQL) # 执行SQL语句

conn.commit() # 提交事务,如果不提交事务,更新不生效

print("更新影响的数据行数:%s" % cmd.rowcount)

print("最后一次增长ID:%s" % cmd.lastrowid)

except Exception:

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

5、

coding:UTF-8

import traceback, pymysql # pip install pymysql

传统的pymysql组件支持的是原生的SQL

SQL = "UPDATE user SET name='周沐言', age=26 WHERE uid=26"

def main(): # 主函数

try:

conn = pymysql.connect(host="localhost", port=3306, charset="UTF8", user="root",

passwd="mysqladmin", database="yootk") # 数据库连接

cmd = conn.cursor() # 获得一个数据库的操作对象

cmd.execute(SQL) # 执行SQL语句

conn.commit() # 提交事务,如果不提交事务,更新不生效

print("更新影响的数据行数:%s" % cmd.rowcount)

except Exception:

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

6、

coding:UTF-8

import traceback, pymysql # pip install pymysql

传统的pymysql组件支持的是原生的SQL

SQL = "DELETE FROM user WHERE uid=26"

def main(): # 主函数

try:

conn = pymysql.connect(host="localhost", port=3306, charset="UTF8", user="root",

passwd="mysqladmin", database="yootk") # 数据库连接

cmd = conn.cursor() # 获得一个数据库的操作对象

cmd.execute(SQL) # 执行SQL语句

conn.commit() # 提交事务,如果不提交事务,更新不生效

print("更新影响的数据行数:%s" % cmd.rowcount)

except Exception:

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

7、

coding:UTF-8

import traceback, pymysql # pip install pymysql

传统的pymysql组件支持的是原生的SQL

SQL = "SELECT uid,name,age,birthday,salary,note FROM user"

def main(): # 主函数

try:

conn = pymysql.connect(host="localhost", port=3306, charset="UTF8", user="root",

passwd="mysqladmin", database="yootk") # 数据库连接

cmd = conn.cursor() # 获得一个数据库的操作对象

cmd.execute(SQL) # 执行SQL查询语句

for user_row in cmd.fetchall(): # 返回查询结果

uid = user_row0

name = user_row1

age = user_row2

birthday = user_row3

salary = user_row4

note = user_row5

print("用户ID:%s、姓名:%s、年龄:%s、birthday:%s、salary:%s、note:%s" % (uid, name, age, birthday, salary, note))

except Exception:

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

8、

coding:UTF-8

import traceback, pymysql # pip install pymysql

传统的pymysql组件支持的是原生的SQL

SQL = "SELECT COUNT(*) FROM user"

def main(): # 主函数

try:

conn = pymysql.connect(host="localhost", port=3306, charset="UTF8", user="root",

passwd="mysqladmin", database="yootk") # 数据库连接

cmd = conn.cursor() # 获得一个数据库的操作对象

cmd.execute(SQL) # 执行SQL查询语句

print("user表的数据行数:%s" % cmd.fetchone())

except Exception:

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

9、

coding:UTF-8

import traceback, pymysql # pip install pymysql

name = "Mr'Yootk" # 模拟为键盘输入

age = 16 # 模拟为键盘输入

birthday = "2016-06-28" # 模拟为键盘输入

salary = 6000.00 # 模拟为键盘输入

note = "www.yootk.com"

SQL = "INSERT INTO user(name,age,birthday,salary,note) VALUES ('%s', %s, '%s', %s, '%s')" % (name, age, birthday, salary, note)

print(SQL)

def main(): # 主函数

try:

conn = pymysql.connect(host="localhost", port=3306, charset="UTF8", user="root",

passwd="mysqladmin", database="yootk") # 数据库连接

cmd = conn.cursor() # 获得一个数据库的操作对象

cmd.execute(SQL) # 执行SQL语句

conn.commit() # 提交事务,如果不提交事务,更新不生效

print("更新影响的数据行数:%s" % cmd.rowcount)

print("最后一次增长ID:%s" % cmd.lastrowid)

except Exception:

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

10、

coding:UTF-8

import traceback, pymysql # pip install pymysql

name = "Mr'Yootk" # 模拟为键盘输入

age = 16 # 模拟为键盘输入

birthday = "2016-06-28" # 模拟为键盘输入

salary = 6000.00 # 模拟为键盘输入

note = "www.yootk.com"

SQL = "INSERT INTO user(name,age,birthday,salary,note) VALUES (%s, %s, %s, %s, %s)" # 预处理的模式

def main(): # 主函数

try:

conn = pymysql.connect(host="localhost", port=3306, charset="UTF8", user="root",

passwd="mysqladmin", database="yootk") # 数据库连接

cmd = conn.cursor() # 获得一个数据库的操作对象

cmd.execute(query=SQL, args=name, age, birthday, salary, note) # 执行SQL语句

conn.commit() # 提交事务,如果不提交事务,更新不生效

print("更新影响的数据行数:%s" % cmd.rowcount)

print("最后一次增长ID:%s" % cmd.lastrowid)

except Exception:

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

11、

coding:UTF-8

import traceback, pymysql # pip install pymysql

传统的pymysql组件支持的是原生的SQL

SQL = "SELECT uid,name,age,birthday,salary,note FROM user WHERE uid=%s" # 占位符

def main(): # 主函数

try:

conn = pymysql.connect(host="localhost", port=3306, charset="UTF8", user="root",

passwd="mysqladmin", database="yootk") # 数据库连接

cmd = conn.cursor() # 获得一个数据库的操作对象

cmd.execute(query=SQL, args=1) # 执行SQL查询语句

for user_row in cmd.fetchall(): # 返回查询结果

uid = user_row0

name = user_row1

age = user_row2

birthday = user_row3

salary = user_row4

note = user_row5

print("用户ID:%s、姓名:%s、年龄:%s、birthday:%s、salary:%s、note:%s" % (uid, name, age, birthday, salary, note))

except Exception:

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

12、

coding:UTF-8

import traceback, pymysql # pip install pymysql

传统的pymysql组件支持的是原生的SQL

SQL = "SELECT uid,name,age,birthday,salary,note FROM user WHERE name LIKE %s LIMIT %s, %s" # 占位符

def main(): # 主函数

keyword= "%沐言%" # 模糊查询关键字

current_page = 1 # 当前所在页

line_size = 2 # 每页显示的数据行

try:

conn = pymysql.connect(host="localhost", port=3306, charset="UTF8", user="root",

passwd="mysqladmin", database="yootk") # 数据库连接

cmd = conn.cursor() # 获得一个数据库的操作对象

cmd.execute(query=SQL, args=keyword, (current_page - 1) \* line_size , line_size) # 执行SQL查询语句

for user_row in cmd.fetchall(): # 返回查询结果

uid = user_row0

name = user_row1

age = user_row2

birthday = user_row3

salary = user_row4

note = user_row5

print("用户ID:%s、姓名:%s、年龄:%s、birthday:%s、salary:%s、note:%s" % (uid, name, age, birthday, salary, note))

except Exception:

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

13、

coding:UTF-8

import traceback, pymysql # pip install pymysql

SQL = "INSERT INTO user(name,age,birthday,salary,note) VALUES (%s, %s, %s, %s, %s)" # 预处理的模式

def main(): # 主函数

try:

conn = pymysql.connect(host="localhost", port=3306, charset="UTF8", user="root",

passwd="mysqladmin", database="yootk") # 数据库连接

cmd = conn.cursor() # 获得一个数据库的操作对象

data_list = \[\] # 创建一个列表

for num in range(1001):

data_list.append(("沐言优拓 - %s" % num, 18, "2008-08-19", 5000.00, "www.yootk.com"))

if num % 20 == 0: # 每保存20条数据就进行更新

cmd.executemany(query=SQL, args=data_list)

data_list.clear()

conn.commit() # 提交事务,如果不提交事务,更新不生效

except Exception:

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

14、

coding:UTF-8

import traceback, pymysql # pip install pymysql

SQL = "INSERT INTO user(name,age,birthday,salary,note) VALUES (%s, %s, %s, %s, %s)" # 预处理的模式

def main(): # 主函数

try:

conn = pymysql.connect(host="localhost", port=3306, charset="UTF8", user="root",

passwd="mysqladmin", database="yootk") # 数据库连接

conn.autocommit(True) # 自动事务提交

cmd = conn.cursor() # 获得一个数据库的操作对象

cmd.execute(query=SQL, args=("李沐言", 18, "2008-08-19", 5000.00, "www.yootk.com"))

except Exception:

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

15、

coding:UTF-8

import traceback, pymysql # pip install pymysql

SQL = "INSERT INTO user(name,age,birthday,salary,note) VALUES (%s, %s, %s, %s, %s)" # 预处理的模式

def main(): # 主函数

try:

conn = pymysql.connect(host="localhost", port=3306, charset="UTF8", user="root",

passwd="mysqladmin", database="yootk", autocommit=True) # 数据库连接

cmd = conn.cursor() # 获得一个数据库的操作对象

cmd.execute(query=SQL, args=("王沐言", 18, "2008-08-19", 5000.00, "www.yootk.com"))

except Exception:

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

16、

coding:UTF-8

import traceback, pymysql # pip install pymysql

SQL_A = "INSERT INTO user(name, ,note) VALUES ('小李', 'www.yootk.com')"

SQL_B = "INSERT INTO user(name, ,note) VALUES ('Mr'Yootk', 'www.yootk.com')"

SQL_C = "INSERT INTO user(name, ,note) VALUES ('小沐', 'www.yootk.com')"

def main(): # 主函数

try:

conn = pymysql.connect(host="localhost", port=3306, charset="UTF8", user="root",

passwd="mysqladmin", database="yootk", autocommit=True) # 数据库连接

cmd = conn.cursor() # 获得一个数据库的操作对象

cmd.execute(query=SQL_A)

cmd.execute(query=SQL_B)

cmd.execute(query=SQL_C)

except Exception:

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

17、

coding:UTF-8

import traceback, pymysql # pip install pymysql

SQL_A = "INSERT INTO user(name, ,note) VALUES ('小李', 'www.yootk.com')"

SQL_B = "INSERT INTO user(name, ,note) VALUES ('Mr'Yootk', 'www.yootk.com')"

SQL_C = "INSERT INTO user(name, ,note) VALUES ('小沐', 'www.yootk.com')"

def main(): # 主函数

try:

conn = pymysql.connect(host="localhost", port=3306, charset="UTF8", user="root",

passwd="mysqladmin", database="yootk", autocommit=False) # 数据库连接

conn.autocommit(False) # 重复设置

cmd = conn.cursor() # 获得一个数据库的操作对象

cmd.execute(query=SQL_A)

cmd.execute(query=SQL_B)

cmd.execute(query=SQL_C)

conn.commit() # 代码执行正确事务提交

except Exception:

conn.rollback() # 事务回滚

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

18、

coding:UTF-8

import traceback, pymysql, DBUtils.PooledDB # pip install DBUtils

SQL = "INSERT INTO user(name, note) VALUES ('小李老师', 'www.yootk.com')"

def main(): # 主函数

try:

pool = DBUtils.PooledDB.PooledDB(

creator=pymysql, # 连接池管理的是pymysql的操作类型

mincached=2, # 空闲时维持两个连接

maxcached=5, # 空闲时不超过5个连接

maxconnections=20 , # 最大的连接数(测试)

blocking=True, # 引入阻塞队列

host="localhost", # 主机名称

port=3306, # 端口

user="root", # 用户名

passwd="mysqladmin", # 密码

database="yootk", # 数据库

charset="UTF8" # 字符编码

)

conn = pool.connection() # 获取数据库连接

cmd = conn.cursor() # 获得一个数据库的操作对象

cmd.execute(query=SQL)

conn.commit() # 代码执行正确事务提交

except Exception:

conn.rollback() # 事务回滚

print(traceback.format_exc())

finally:

conn.close() # 数据库为资源操作,资源操作的最后必须关闭

if name == "main": # 判断程序执行名称

main() # 调用主函数

相关推荐
天天被压力几秒前
【A股分钟级高频数据完全手册 #02】Python调用股票1分钟数据接口:Pro版最新分时取数与字段解析
java·人工智能·python
代码不停1 分钟前
Spring Aop
java·数据库·spring
keyipatience8 分钟前
MySQL 学习(4)常用数据类型
数据库·mysql
达梦产品与服务10 分钟前
SQLark V4.2 更新 | 新增TiDB、SSL安全连接、数据字典、清空/截断表等40+项功能已上线!
数据库·安全·tidb·ssl
天天被压力20 分钟前
【A股分钟级高频数据完全手册 #01】Pro版接口体系总览与REST鉴权:42篇地图与从0接入
java·人工智能·python
xyouyuweizhu23 分钟前
Java InetAddress 详解:从 IP 地址表示到主机名解析
java·开发语言·python
码农阿豪38 分钟前
SQL Server数据迁移完成后,凌晨的数据库告警该怎么查?
数据库·sqlserver
bjzhang751 小时前
sqlsugar入门
数据库·sqlsugar
全栈陈序员3 小时前
【Git】从入门到精通(十)—— 撤销与恢复:git checkout与git restore
运维·网络·数据库·git
belldeep9 小时前
python:genesis-world, Genesis-Embodied-AI
人工智能·python·ai·genesis