码迷,mamicode.com
首页 > 数据库 > 详细

python--连接数据库pymysql

时间:2019-03-19 12:35:54      阅读:257      评论:0      收藏:0      [点我收藏+]

标签:解决办法   连接数   finally   关闭数据库   host   nec   use   __name__   打开   

PyMySQL简介:

PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。

Django中也可以使用PyMySQL连接MySQL数据库。

PyMySQL 安装:

pip install pymysql

 

连接数据库:

  • 你有一个MySQL数据库,并且已经启动。
  • 你有可以连接该数据库的用户名和密码
  • 你有一个有权限操作的database
"""
连接数据库进行数据操作
"""
import pymysql

# 打开数据库连接
db = pymysql.connect(host="你的数据库地址",
                     port=3306,
                     user="用户名",
                     passwd="密码",
                     db="数据库名",
                     charset="utf8")

# 查询操作
# 使用cursor()方法创建一个游标对象cur
cur = db.cursor()
# 使用execute()方法执行SQL查询
sql_add = "select * from orders where type=2"
cur.execute(sql_add)
# 使用fetchall()方法获取查询结果
data = cur.fetchall()
print(data)
# 关闭数据库连接
db.close()
# 元祖取值
print(data[0])
print(data[0][1])
# 数据大时单独取出对应的值
for i in data:
    if "2651" in i:
        print(i[1])

# 删除操作
# 使用cursor()方法创建一个游标对象cur
cur = db.cursor()
# 使用execute()方法执行SQL增删改查操作
sql_delete = "delete from orders  where type=2 limit 1"
cur.execute(sql_delete)
# 删除数据或者修改数据时一定使用db.commit()提交
db.commit()
db.close()


# 删除功能后下次跑自动化代码没有数据报错,解决办法
# 得到一个可以执行SQL语句的光标对象
cursor = db.cursor()

# 方法一:
# 修改数据的SQL语句
sql = "UPDATE USER1 SET age=%s WHERE name=%s;"
username = "Alex"
age = 80
try:
    # 执行SQL语句
    cursor.execute(sql, [age, username])
    # 提交事务
    db.commit()
except Exception as e:
    # 有异常,回滚事务
    db.rollback()
cursor.close()
db.close()

# 方法二:
def insert_db(sql_insert):
    # 使用cursor()方法创建一个游标对象cur
    cur = db.cursor()
    # 判断数据是否存在
    try:
        cur.execute(sql_insert)
        # 提交
        db.commit()
    except Exception as e:
        print("错误信息:%s" % str(e))
        # 错误回滚
        db.rollback()
    finally:
        db.close()
if __name__ == __main__:
    sql_add = "insert student(id,name,age) values (10022,‘张三‘,20)"
    insert_db(sql_add)

 

python--连接数据库pymysql

标签:解决办法   连接数   finally   关闭数据库   host   nec   use   __name__   打开   

原文地址:https://www.cnblogs.com/yitao326/p/10557606.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!