Python怎么连接mysql,常见操作是什么
Admin 2022-07-18 群英技术资讯 332 次浏览
现在Python越来越被大众所使用,特别是进入AI人工智能时代,对编程要求更加高效根据快捷,所以Python也经常成为人工智和大数据编程的重要语音。既然是编程语言就多多少少会需求对数据进行操作,这一篇我们带大家使用python对mysql进行的操作。
别的不说,直接上代码
建表的时候,遇到一些坑,没有解决,如修改 MySQL 的默认引擎,default-storage-engine=InnoDB;
执行报错 。。。无奈
use mybatistable; drop table Test; -- INNODB 支持事务 -- Mysql 默认的引擎是 MyISAM ,不支持事务操作 -- 在创建 mysql 表时,最好指定表使用的引擎 -- 或者直接修改Mysql 默认的数据库引擎为 InnoDB -- default-storage-engine=InnoDB; 执行报错 。。。无奈 create table Test( id int(10) not null auto_increment, name varchar(20) not null, password varchar(30) not null, constraint pk_id primary key(id), constraint uk_name unique(name) )engine=InnoDB charset=utf8; -- 查看表的引擎 show create table Test; -- 更新表的引擎 ,执行报错 -- alter table Test type = InnoDB; insert into Test values(default,'小红',123); insert into Test values(default,'小李',123); insert into Test values(default,'小赵',123); insert into Test values(default,'小军',123); insert into Test values(default,'小方',123); select * from Test;
import pymysql ''' 连接 mysql 数据库的步骤 fetchall 接受全部的返回结果行 PS:只有 innodb 类型的表才可以设置 autocommit; ''' def connectMySql(): host = '127.0.0.1' username = 'root' password = 'root' # dbName = 'MyBatistable' # 获得数据库连接对象 conn = pymysql.connect(host,username,password) #关闭数据库的自动提交事务 conn.autocommit(False) # 选择要操作的数据库 conn.select_db('MyBatistable') #覆盖之前操作的数据库名 # 获得游标 cursor = conn.cursor() #定义 SQL 语句 sql = 'select * from Test' sql1 = 'insert into test values(default,"小锅","120")' sql2 = 'update test set name="小库2" where id = 2' sql3 = 'delete from test where id = 2' #执行 SQL 语句 # row = cursor._query(sql) #执行 execute 方法,返回影响的行数 row = cursor.execute(sql1) print('row type:',type(row)) print('受影响的行数为:',row) if row > 0: conn.commit() # 提交事务 print('SUCCESS') else: conn.rollback() # 回滚事务 print('Failure') #使用DQL ,返回结果集,以元组的形式 nums = cursor.fetchall() print('nums Type:',type(nums)) #处理结果集 if nums != () : for num in nums: print('--',num) if __name__ == '__main__': connectMySql()
Python 操作 MySQL 时,由于MySQL 默认使用时 MyISAM 引擎,不支持事务操作。而在Python操作 Mysql 中关闭自动提交事务,发现并没有卵用,然后到网上百度说,Mysql 中 InnoDB 支持事务,然后我查找一哈我自己表的引擎发现是 MyISAM ,欲哭无泪啊。然后我就重新开始建表,测试。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了python基础之画图神器matplotlib,文中有非常详细的代码示例,对正在学习python的小伙伴们有一定的帮助,需要的朋友可以参考下
本篇文章给大家带来了关于Python的相关知识,其中主要介绍了Python 列表的索引取值,本节重点掌握多次索引取值的语法:列表[索引][索引],结合示例代码给大家介绍的非常详细,下面一起来看一下,希望对大家有帮助。
这篇文章主要介绍了python列表详情,python没有数组,而是引入了列表(list),列表可以存储任何类型的数据,而且同一个列表中的数据类型也可以不同,下面一起来看文章详细内容吧
Keras的核心原则是逐步揭示复杂性,可以在保持相应的高级便利性的同时,对操作细节进行更多控制。当我们要自定义fit中的训练算法时,可以重写模型中的train_step方法,然后调用fit来训练模型。这里以tensorflow2官网中的例子来说明:
PyTorch是一个开源的Python机器学习库,基于Torch,用于自然语言处理等应用程序。它不仅能够实现强大的GPU加速,同时还支持动态神经网络。本文将介绍PyTorch搭建CNN如何实现风速预测,感兴趣的可以学习一下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008