赞
踩
文章目录
提前安装MySQL数据库(可以使用Linux系统的,也可以使用Windows版本)
如何实现将100000条数据插入到MySQL数据库?
如果使用之前学习的MySQL客户端来完成这个操作,那么这个工作量无疑是巨大的,我们可以通过使用程序代码的方式去连接MySQL数据库,然后对MySQL数据库进行增删改查的方式,实现100000条数据的插入,像这样使用代码的方式操作数据库就称为数据库编程。
安装PyMySQL:
pip install pymysql
卸载PyMySQL:
pip uninstall pymysql
import pymysql
调用pymysql模块中的connect()函数来创建连接对象,代码如下:
- conn=connect(参数列表)
-
- * 参数host:连接的mysql主机,如果本机是'localhost'
- * 参数port:连接的mysql主机的端口,默认是3306
- * 参数user:连接的用户名
- * 参数password:连接的密码
- * 参数database:数据库的名称
- * 参数charset:通信采用的编码方式,推荐使用utf8
连接对象操作说明:
关闭连接 conn.close()
提交数据 conn.commit()
撤销数据 conn.rollback()
获取游标对象的目标就是要执行sql语句,完成对数据库的增、删、改、查操作。代码如下:
- # 调用连接对象的cursor()方法获取游标对象
- cur =conn.cursor()
游标操作说明:
使用游标执行SQL语句: execute(operation [parameters ]) 执行SQL语句,返回受影响的行数,主要用于执行insert、update、delete、select等语句
获取查询结果集中的一条数据:cur.fetchone()返回一个元组, 如 (1,'张三')
获取查询结果集中的所有数据: cur.fetchall()返回一个元组,如((1,'张三'),(2,'李四'))
关闭游标: cur.close(),表示和数据库操作完成
- import pymysql
-
- # 创建连接对象
- conn = pymysql.connect(host='localhost', port=3306, user='root', password='mysql',database='db_lanson', charset='utf8')
-
- # 获取游标对象
- cursor = conn.cursor()
-
- # 查询 SQL 语句
- sql = "select * from students;"
- # 执行 SQL 语句 返回值就是 SQL 语句在执行过程中影响的行数
- row_count = cursor.execute(sql)
- print("SQL 语句执行影响的行数%d" % row_count)
-
- # 取出结果集中一行数据, 例如:(1, '张三')
- # print(cursor.fetchone())
-
- # 取出结果集中的所有数据, 例如:((1, '张三'), (2, '李四'), (3, '王五'))
- for line in cursor.fetchall():
- print(line)
-
- # 关闭游标
- cursor.close()
-
- # 关闭连接
- conn.close()

- import pymysql
-
- # 创建连接对象
- conn = pymysql.connect(host='localhost', port=3306, user='root', password='mysql',database='db_lanson', charset='utf8')
-
- # 获取游标对象
- cursor = conn.cursor()
-
- try:
- # 添加 SQL 语句
- # sql = "insert into students(name) values('赵云'), ('王昭君');"
- # 删除 SQ L语句
- # sql = "delete from students where id = 6;"
- # 修改 SQL 语句
- sql = "update students set name = '王小丽' where id = 8;"
- # 执行 SQL 语句
- row_count = cursor.execute(sql)
- print("SQL 语句执行影响的行数%d" % row_count)
- # 提交数据到数据库
- conn.commit()
- except Exception as e:
- # 回滚数据, 即撤销刚刚的SQL语句操作
- conn.rollback()
-
- # 关闭游标
- cursor.close()
-
- # 关闭连接
- conn.close()

注:PyMySQL是基于事务进行操作的,所以在数据库增删改操作时,必须通过conn.commit() 方法将事务操作提交到数据库,如果事务操作没有成功,则可以通过conn.rollback()进行回滚(返回到数据的原始状态)。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。