您的位置:首页技术文章
文章详情页

python将数据插入数据库的代码分享

浏览:2日期:2022-07-14 08:46:27

python将数据插入数据库的方法:

首先读入数据并建立数据库连接; 然后创建数据库; 接着执行插入数据语句,迭代读取每行数据; 最后关闭数据库连接即可。

比如现在我们要将如下Excel数据表格插入到MySQL数据库中,该如何实现呢?

python将数据插入数据库的代码分享

实现代码:

#导入需要使用到的数据模块import pandas as pdimport pymysql#读入数据filepath = ’E:_DataSetcatering_sale.xls’data = pd.read_excel(filepath)#建立数据库连接db = pymysql.connect(’localhost’,’root’,’1234’,’python_analysis’)#获取游标对象cursor = db.cursor()#创建数据库,如果数据库已经存在,注意主键不要重复,否则出错try: cursor.execute(’create table catering_sale(num int primary key,date datetime, sale float )’)except: print(’数据库已存在!’)#插入数据语句query = '''insert into catering_sale (num, date, sale) values (%s,%s,%s)'''#迭代读取每行数据#values中元素有个类型的强制转换,否则会出错的#应该会有其他更合适的方式,可以进一步了解for r in range(0, len(data)): num = data.ix[r,0] date = data.ix[r,1] sale = data.ix[r,2] values = (int(num), str(date), float(sale)) cursor.execute(query, values)#关闭游标,提交,关闭数据库连接#如果没有这些关闭操作,执行后在数据库中查看不到数据cursor.close()db.commit()db.close()#重新建立数据库连接db = pymysql.connect(’localhost’,’root’,’1234’,’python_anylysis’)cursor = db.cursor()#查询数据库并打印内容cursor.execute(’’’select * from catering_sale’’’)results = cursor.fetchall()for row in results: print(row)#关闭cursor.close()db.commit()db.close()

知识点扩展:

数据库连接池

数据库的连接是昂贵的,一个连接要经过TCP三次握手,四次挥手,而且一台计算机的最大线程数也是有限的

数据库连接池技术就是先创建好连接,再直接拿出来使用

import mysql.connector,mysql.connector.pooling config={ 'host': 'localhost', 'port': '3306', 'user': 'root', 'password': 'password', 'database': 'demo' } try: pool=mysql.connector.pooling.MySQLConnectionPool(**config,pool_size=5) con=pool.get_connection() con.start_transaction() cursor = con.cursor() sql = 'INSERT INTO t_dept(deptno,dname,loc) VALUES(%s,%s,%s);' cursor.execute(sql, (70, 'SALES', 'HUBAI')) con.commit() except Exception as e: if 'con' in dir(): con.rollback() print(e) # do not need to close con

到此这篇关于python将数据插入数据库的代码分享的文章就介绍到这了,更多相关python如何将数据插入数据库内容请搜索好吧啦网以前的文章或继续浏览下面的相关文章希望大家以后多多支持好吧啦网!

标签: Python 编程
相关文章: