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_row[0]

name = user_row[1]

age = user_row[2]

birthday = user_row[3]

salary = user_row[4]

note = user_row[5]

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_row[0]

name = user_row[1]

age = user_row[2]

birthday = user_row[3]

salary = user_row[4]

note = user_row[5]

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_row[0]

name = user_row[1]

age = user_row[2]

birthday = user_row[3]

salary = user_row[4]

note = user_row[5]

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() # 调用主函数

相关推荐
2301_800256111 分钟前
地理空间数据库作业笔记——查询最偏僻的城市
数据库·笔记·sql·postgresql·1024程序员节
Python×CATIA工业智造38 分钟前
Python函数包装技术详解:从基础装饰器到高级应用
python·pycharm
卓码软件测评41 分钟前
软件可用性测试历史概念✅软件可用性测试的国际标准✅软件可用性测试方法
数据库·单元测试·可用性测试·软件需求
R.lin1 小时前
OSS服务模块-基于数据库配置的Java OSS服务解决方案,支持MinIO、七牛云、阿里云和腾讯云
java·数据库·后端·mysql
橄榄熊1 小时前
使用VScode 插件,连接MySQL,可视化操作数据库
数据库·mysql
自由会客室1 小时前
Ubuntu24安装MongoDB7
数据库·mongodb
快秃头的码农1 小时前
LazyLLM,(万象应用开发平台 AppStudio)商汤大装置
python
秋千码途1 小时前
在K8S中部署MySQL主从
mysql·云原生·容器·kubernetes
蜡笔小炘2 小时前
SQL sever数据库--第二次作业
数据库·sql·oracle
木易 士心2 小时前
软考数据库系统工程师知识点详解(高频考点与备考建议)
数据库·1024程序员节