python数据存储系列教程——python中mysql数据库操作:连接、增删查改、指令执行
来源:互联网 发布:文华财经编程视频教程 编辑:程序博客网 时间:2024/06/05 06:39
全栈工程师开发手册 (作者:陈玓玏)
python教程全解
调试环境python2.7,调试python操作mysql数据库,首先要在本地或服务器安装mysql数据库。如何安装自行百度。
在python2.7下,我们使用MySQLdb库点击下载
在python3.6下我们使用pymysql库点击下载
安装python库的方法,请查看Python库的安装与卸载
安装成功后就可以编程代码实现python对mysql数据库的操作了
python2.7下代码如下
如果连接失败会报错。
#coding:utf-8#python2.7使用MySQLdb操作mysqlimport MySQLdbprint("=====================mysql数据库=====================")getRC = lambda cur: cur.rowcount if hasattr(cur, 'rowcount') else -1 #获取游标所指向是数据的行数HOST = "127.0.0.1" #数据库主机USER = 'root' #用户名PASSWORD = '111111' #密码DBNAME = 'note' #数据名称try: conn = MySQLdb.connect(HOST,USER,PASSWORD,DBNAME) #连接mysql数据库,参数:主机号、用户名、密码、数据库 curs=conn.cursor() # 获取游标 curs.execute('CREATE TABLE student(id INTEGER PRIMARY KEY,name TEXT)') # 执行代码,创建表和字段 curs.execute("INSERT INTO student VALUES(1,'student1')"); # 添加记录 curs.execute("INSERT INTO student VALUES(%d, '%s')" % (2, 'student2')) #添加记录 conn.commit() # 每次执行完后都应该保存except Exception:print("数据表和记录已经添加")finally: curs.execute("UPDATE student SET name='student3' WHERE id=2") #更新记录 curs.execute("SELECT * FROM student") # 查询记录 for row in curs.fetchall(): print(row[0],row[1]) curs.execute('DELETE FROM student WHERE id=%d' % 1) #删除记录 curs.execute('DROP TABLE student') #删除表 curs.close() #关闭游标 conn.close() #关闭连接
python3.6下代码如下
#coding:utf-8#python3.6使用pymysql操作mysqlprint("=====================mysql数据库=====================")import pymysql.cursors# 连接数据库connect = pymysql.Connect( host='127.0.0.1', port=3306, user='root', passwd='19910101a', db='note', charset='utf8')# 获取游标cursor = connect.cursor()#删除表sql = 'DROP TABLE IF EXISTS student'cursor.execute(sql)connect.commit()print('如果存在表就删除表格')#创建表格sql = "CREATE TABLE student(id INTEGER PRIMARY KEY,name TEXT)"try: cursor.execute(sql) connect.commit()except: print("表已存在")print('成功创建表格')# 插入数据sql = "INSERT INTO student VALUES(%d,'%s')"data = (1, 'student1')cursor.execute(sql % data)connect.commit()print('成功插入', cursor.rowcount, '条数据')# 修改数据sql = "UPDATE student SET name = '%s' WHERE id = %d "data = ('student2', 1)cursor.execute(sql % data)connect.commit()print('成功修改', cursor.rowcount, '条数据')# 查询数据sql = "SELECT * FROM student WHERE id=%d"data = (1,)cursor.execute(sql % data)for row in cursor.fetchall(): print("%s" % str(row))print('共查找出', cursor.rowcount, '条数据')# 删除数据sql = "DELETE FROM student WHERE id = %d LIMIT %d"data = (1, 1)cursor.execute(sql % data)connect.commit()print('成功删除', cursor.rowcount, '条数据')# 事务处理sql_1 = "UPDATE student SET name = name + '1' WHERE id = 1 "try: cursor.execute(sql_1)except Exception as e: connect.rollback() # 事务回滚 print('事务处理失败', e)else: connect.commit() # 事务提交 print('事务处理成功', cursor.rowcount)# 关闭连接cursor.close()connect.close()#pymysql.Connect()参数说明#host(str): MySQL服务器地址#port(int): MySQL服务器端口号#user(str): 用户名#passwd(str): 密码#db(str): 数据库名称#charset(str): 连接编码##connection对象支持的方法#cursor() 使用该连接创建并返回游标#commit() 提交当前事务#rollback() 回滚当前事务#close() 关闭连接##cursor对象支持的方法#execute(op) 执行一个数据库的查询命令#fetchone() 取得结果集的下一行#fetchmany(size) 获取结果集的下几行#fetchall() 获取结果集中的所有行#rowcount() 返回数据条数或影响行数#close() 关闭游标对象
阅读全文
2 0
- python数据存储系列教程——python中mysql数据库操作:连接、增删查改、指令执行
- python数据存储系列教程——python操作sqlite数据库:连接、增删查改、指令执行
- python 连接mysql数据库 进行增删改查操作
- python操作MySQL数据库增删改查
- python中MySQL数据的增删改查操作
- python Django连接MySQL数据库做增删改查
- python操作mysql数据库(增删查改)
- python操作MySQL数据库增删改查使用MySQLdb
- python安装mysql数据库和实现增删查改操作
- python操作MySQL数据库(增删改查)
- Python之MySQL数据库增删改查操作
- python 操作 mysql 简单增删改查
- Python 操作mysql 增删改查
- python的MySQL操作增删改查
- python mysql增删改查
- Python Mysql:增删改查
- C#连接Oracle数据库(执行增删改查操作)
- c#连接mysql数据库,增删查改命令执行
- JAVA 并发编程随笔【六】线程的竞态条件与临界区
- 带修改的莫队算法【JZOJ 4594】【UVa 12345】Dynamic len
- #快速幂#POJ 2991 2011&&luogu 1226 取余运算
- LInux安装ARPACK库
- Internet结构
- python数据存储系列教程——python中mysql数据库操作:连接、增删查改、指令执行
- 2th roma int
- 最长回文子串
- 扩展欧几里得算法
- 深度学习
- ERROR 1045 (28000)- Access denied for user 'xxx'@'localhost' (using password- YES)【奇葩的bug】
- linux进程编程,exec系列函数(execl,execlp,execle,execv,execvp)使用
- C++debug调试出现heap corruption detected: after normal block 可能的原因
- angular2后台管理系统