189 8069 5689

python操作mysql数据库(二)-创新互联

     在上一篇文章里面主要介绍了关于python3连接数据库,创建数据库以及创建表的相关内容,在接下来我们试着在我们刚才创建的表中插入数据,并对其做相关探究。

10年积累的网站设计、成都做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先做网站后付款的网站建设流程,更有零陵免费网站建设让你可以放心的选择与我们合作。#/usr/bin/env python #_*_coding:utf-8_*_ #导入pymysql模块 import pymysql #打开数据库链接 connect=pymysql.connect(host="192.168.186.157",port=3306,user="winner",passwd="123123",db="pymysql",charset="utf8",connect_timeout=3000) #使用cursor方法获取操作游标 cursor=connect.cursor() sql=''' insert into  class (name,address)  values("JSP","go"),("winner","back"),("GOOD","contine"),("cursor","execute"); ''' #使用execute方法操作数据库 cursor.execute(sql) #事务提交 #connect.commit()   data=cursor.execute("select * from class order by id desc" ) #使用fetchall方法获取操作结果 data=cursor.fetchmany(5) print(data) 注意:在这里将事务提交的部分注释掉了,特演示一下不提交事务的情况。

执行结果(执行第四次时):

C:\Users\Administrator\AppData\Local\Programs\Python\Python35\python.exe C:/Users/Administrator/PycharmProjects/python/insertmysql.py ((12, 'cursor', 'execute'), (11, 'GOOD', 'contine'), (10, 'winner', 'back'), (9, 'JSP', 'go')) Process finished with exit code 0检查数据库中的数据: mysql> select database(); +------------+ | database() | +------------+ | pymysql    | +------------+ 1 row in set (0.00 sec) mysql> show tables; +-------------------+ | Tables_in_pymysql | +-------------------+ | class             | +-------------------+ 1 row in set (0.00 sec) mysql> select * from  class; Empty set (0.00 sec) mysql>经过检查数据库相关表,我们发现此时数据为空,这是为什么呢,回忆一下我们将注释事务提交行 connect.commit() 这里就涉及到mysql数据库有关事务的相关知识, 我们试试加上事务会是什么结果呢??

执行结果(手动干预过的显示结果):

C:\Users\Administrator\AppData\Local\Programs\Python\Python35\python.exe C:/Users/Administrator/PycharmProjects/python/insertmysql.py ((28, 'cursor', 'execute'), (27, 'GOOD', 'contine'), (26, 'winner', 'back'),  (25, 'JSP', 'go'), (24, 'cursor', 'execute'), (23, 'GOOD', 'contine'),   (22, 'winner', 'back'), (21, 'JSP', 'go'), (20, 'cursor', 'execute'),   (19, 'GOOD', 'contine'), (18, 'winner', 'back'), (17, 'JSP', 'go'),    (16, 'cursor', 'execute'), (15, 'GOOD', 'contine'), (14, 'winner', 'back'),     (13, 'JSP', 'go')) Process finished with exit code 0

数据库的查询结果:

mysql> select * from  class; +----+--------+---------+ | id | name   | address | +----+--------+---------+ | 13 | JSP    | go      | | 14 | winner | back    | | 15 | GOOD   | contine | | 16 | cursor | execute | | 17 | JSP    | go      | | 18 | winner | back    | | 19 | GOOD   | contine | | 20 | cursor | execute | | 21 | JSP    | go      | | 22 | winner | back    | | 23 | GOOD   | contine | | 24 | cursor | execute | | 25 | JSP    | go      | | 26 | winner | back    | | 27 | GOOD   | contine | | 28 | cursor | execute | +----+--------+---------+ 16 rows in set (0.00 sec) mysql>

    由此我们发现数据库的事务关系在软件开发的过程当中是相当重要的一部分,所以在对事务处理的时候需要严谨。

提交事务的源代码:

#/usr/bin/env python #_*_coding:utf-8_*_ #导入pymysql模块 import pymysql #打开数据库链接 connect=pymysql.connect(host="192.168.186.157",port=3306,user="winner",passwd="123123",db="pymysql",charset="utf8",connect_timeout=3000) #使用cursor方法获取操作游标 cursor=connect.cursor() sql=''' insert into  class (name,address)  values("JSP","go"),("winner","back"),("GOOD","contine"),("cursor","execute"); ''' #使用execute方法操作数据库 cursor.execute(sql) #事务提交 connect.commit() data=cursor.execute("select * from class order by id desc" ) #使用fetchall方法获取操作结果 data=cursor.fetchall() print(data)

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


文章名称:python操作mysql数据库(二)-创新互联
网站URL:http://cdxtjz.cn/article/dgdgji.html

其他资讯