python–连接数据库pymysql

  • 2015-12-06
  • 13
  • 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

评论

还没有任何评论,你来说两句吧