本文主要给大家介绍Python标准库MySQL工作流程是怎么样的,文章内容都是笔者用心摘选和编辑的,具有一定的针对性、对大家的参考意义还是比较大的、下面跟笔者一起了解下Python标准库MySQL工作流程是怎么样的吧。
MySQLdb工作流程如下:
<人力资源/>
连接连接方法用于创建客户端与数据库的网络连接。
语法:
MySQLdb.Connect(参数)
参数
参数类型说明主机字符串MySQL云服务器地址港口整型MySQL云服务器端口号用户字符串MySQL数据库用户名passwd字符串MySQL数据库密码db字符串MySQL数据库库名字符集字符串连接所使用的字符集例如:
#,导入MySQLdb模块 在祝辞祝辞import MySQLdb #,创建一个连接连接 祝辞祝辞祝辞,conn =, MySQLdb.Connect(主机=& # 39;127.0.0.1 # 39;,,用户=& # 39;根# 39;,,passwd=& # 39;作为# 39;,,db=& # 39;用户# 39;,,=3306港,charset=皍tf8") 在祝辞祝辞,cursor =, conn.cursor () 在祝辞祝辞,打印(指针) & lt; MySQLdb.cursors.Cursor  object at 0 x7f4af5e15550> 在祝辞祝辞,打印(康涅狄格州) & lt; _mysql.connection  open 用& # 39;127.0.0.1 # 39;,at 15 b1518> #,关闭连接 在祝辞祝辞,conn.close () 在祝辞祝辞,打印(康涅狄格州) & lt; _mysql.connection  closed at 15 b1518>
连接对象支持的方法
方法名说明光标()使用该连接创建并返回游标commit()提交当前事务rollback()回滚当前事务近()关闭连接光标光标用户执行查询和获取结果,执行流程如下:
指针对象所支持的方法
参数名说明执行(“SQL”)执行的SQL语句fefchone()获取结果的下一行fefchmany(大小)获取结果的下几行fefchall()获取结果剩下的所有行rowcount最近一次执行返回数据的行数或影响的行数()密切关闭游标对象事务
访问额更新数据库的一个程序执行单元,执行单元指的就是很多操作的集合,里面的每个操作都是用来访问个更新数据库。
- <李>
原子性:事务中包括的诸多操作要么都做要么都不做
李>比如银行转账,一个用户向B用户转账100 A - 100和+ 100这两个操作,要么都做,要么都不操作
- <李>
一致性:事务必须使数据库从一致性状态变到另一个一致性状态
李> <李>隔离性:一个事务的执行不能被其他事务干扰
李> <李>持久性:事务一旦提交,他对数据库的改变是永久性的
李>开发中怎样使用事务吗?
- <李>
关闭自动提交:设置conn.autocommit(假),MySQLdb默认已经为假
李> <李>正常结束事务:conn.commit ()
李> <李>异常结束事务:conn.rollback ()
李>实例
- <李>
选择查询数据
李>先创建一个用户表:
CREATE DATABASE 用户; USE 用户; CREATE TABLE “用户”,( “标识”,INT (11), NOT NULL AUTO_INCREMENT, “用户名”,VARCHAR (100), DEFAULT 空, PRIMARY KEY (标识) ),引擎=INNODB AUTO_INCREMENT=9, DEFAULT CHARSET=use utf8;
插入以下内容
INSERT INTO 用户(用户id,用户名),值(1,& # 39;name1& # 39;); INSERT INTO 用户(用户名,用户名),值(2,& # 39;name2& # 39;); INSERT INTO 用户(用户名,用户名),值(3,& # 39;name3& # 39;); INSERT INTO 用户(用户名,用户名),值(4,& # 39;name4& # 39;); INSERT INTO 用户(用户名,用户名),值(5,& # 39;name5& # 39;);
查看数据
mysql>, SELECT *,得到用户; + - - - - - - - - - - - - - - - - - - - - - + | |,userid username | + - - - - - - - - - - - - - - - - - - - - - + |,,,,,,1,|,name1 ,, | |,,,,,,2,|,name2 ,, | |,,,,,,3,|,name3 ,, | |,,,,,,4,|,name4 ,, | |,,,,,,5,|,name5 ,, | + - - - - - - - - - - - - - - - - - - - - - + 5,rows set 拷贝;(0.00,sec)<>之前在祝辞祝辞import MySQLdb 祝辞祝辞祝辞,conn =, MySQLdb.Connect(主机=& # 39;127.0.0.1 # 39;,,用户=& # 39;根# 39;,,passwd=& # 39;作为# 39;,,db=& # 39;用户# 39;,,=3306港,charset=皍tf8") 在祝辞祝辞,cursor =, conn.cursor () 在祝辞祝辞,SQL =,“SELECT *,得到user" #,返回获取到的多少行 在祝辞祝辞,cursor.execute (SQL) 5 #,输出获取到的行数 在祝辞祝辞,打印(cursor.rowcount) 5 #,返回第一条数据 在祝辞祝辞,cursor.fetchone () (1),& # 39;name1& # 39;) #,返回两条数据 在祝辞祝辞,cursor.fetchmany (2) (2),& # 39;name2& # 39;),, (3, & # 39; name3& # 39;)) #,返回剩下的所有数据 在祝辞祝辞,cursor.fetchall () (4,& # 39;name4& # 39;),, (5, & # 39; name5& # 39;))