如何分享使用Python将数据插入数据库的代码示例?
- 内容介绍
- 文章标签
- 相关推荐
本文共计612个文字,预计阅读时间需要3分钟。
Python将数据插入数据库的方法:
1.首先读取数据并建立数据库连接;
2.创建数据库;
3.执行插入数据语句,遍历每行数据;
4.最后关闭数据库连接。
python将数据插入数据库的方法:
- 首先读入数据并建立数据库连接;
- 然后创建数据库;
- 接着执行插入数据语句,迭代读取每行数据;
- 最后关闭数据库连接即可。
比如现在我们要将如下Excel数据表格插入到MySQL数据库中,该如何实现呢?
实现代码:
#导入需要使用到的数据模块 importpandasaspd importpymysql #读入数据 filepath='E:\_DataSet\catering_sale.xls' data=pd.read_excel(filepath) #建立数据库连接 db=pymysql.connect('localhost','root','1234','python_analysis') #获取游标对象 cursor=db.cursor() #创建数据库,如果数据库已经存在,注意主键不要重复,否则出错 try: cursor.execute('createtablecatering_sale(numintprimarykey,datedatetime,salefloat)') except: print('数据库已存在!') #插入数据语句 query="""insertintocatering_sale(num,date,sale)values(%s,%s,%s)""" #迭代读取每行数据 #values中元素有个类型的强制转换,否则会出错的 #应该会有其他更合适的方式,可以进一步了解 forrinrange(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*fromcatering_sale''') results=cursor.fetchall() forrowinresults: 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如何将数据插入数据库内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!
本文共计612个文字,预计阅读时间需要3分钟。
Python将数据插入数据库的方法:
1.首先读取数据并建立数据库连接;
2.创建数据库;
3.执行插入数据语句,遍历每行数据;
4.最后关闭数据库连接。
python将数据插入数据库的方法:
- 首先读入数据并建立数据库连接;
- 然后创建数据库;
- 接着执行插入数据语句,迭代读取每行数据;
- 最后关闭数据库连接即可。
比如现在我们要将如下Excel数据表格插入到MySQL数据库中,该如何实现呢?
实现代码:
#导入需要使用到的数据模块 importpandasaspd importpymysql #读入数据 filepath='E:\_DataSet\catering_sale.xls' data=pd.read_excel(filepath) #建立数据库连接 db=pymysql.connect('localhost','root','1234','python_analysis') #获取游标对象 cursor=db.cursor() #创建数据库,如果数据库已经存在,注意主键不要重复,否则出错 try: cursor.execute('createtablecatering_sale(numintprimarykey,datedatetime,salefloat)') except: print('数据库已存在!') #插入数据语句 query="""insertintocatering_sale(num,date,sale)values(%s,%s,%s)""" #迭代读取每行数据 #values中元素有个类型的强制转换,否则会出错的 #应该会有其他更合适的方式,可以进一步了解 forrinrange(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*fromcatering_sale''') results=cursor.fetchall() forrowinresults: 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如何将数据插入数据库内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!

