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

 更新时间:2020年08月16日 09:25:39   作者:FXL  
在本篇文章里小编给大家整理的是关于python将数据插入数据库的代码内容,有兴趣的朋友们可以参考下。

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

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

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

294649551e5a181455c4b52f23b8e44.png

实现代码:

#导入需要使用到的数据模块
import pandas as pd
import pymysql

#读入数据
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('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中不同数据对象的空值校验方法

    一文带你了解Python中不同数据对象的空值校验方法

    空值校验在数据处理和应用程序开发中是一个非常重要的任务,Python提供了多种方式来检查不同数据对象(如字符串、列表、字典、集合等)是否为空或包含空值,下面就跟随小编一起来学习一下吧
    2024-01-01
  • 简单了解python装饰器原理及使用方法

    简单了解python装饰器原理及使用方法

    这篇文章主要介绍了简单了解python装饰器原理及使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • Python入门教程(二十三)Python的继承

    Python入门教程(二十三)Python的继承

    这篇文章主要介绍了Python入门教程(二十三)Python的继承,Python是一门非常强大好用的语言,也有着易上手的特性,本文为入门教程,需要的朋友可以参考下
    2023-04-04
  • 在Python中操作文件之truncate()方法的使用教程

    在Python中操作文件之truncate()方法的使用教程

    这篇文章主要介绍了在Python中操作文件之truncate()方法的使用教程,是Python入门学习中的基础知识,需要的朋友可以参考下
    2015-05-05
  • 使用python爬虫实现网络股票信息爬取的demo

    使用python爬虫实现网络股票信息爬取的demo

    下面小编就为大家分享一篇使用python爬虫实现网络股票信息爬取的demo,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01
  • Django单元测试的具体使用

    Django单元测试的具体使用

    Django提供了一套强大的测试工具来帮助开发者编写和运行单元测试,本文就来介绍一下Django中的单元测试,包括测试原理、编写测试用例和运行测试,感兴趣的可以了解一下
    2023-11-11
  • 浅谈python中set使用

    浅谈python中set使用

    下面小编就为大家带来一篇浅谈python中set使用。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • Pytorch通过保存为ONNX模型转TensorRT5的实现

    Pytorch通过保存为ONNX模型转TensorRT5的实现

    这篇文章主要介绍了Pytorch通过保存为ONNX模型转TensorRT5的实现,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • python列表:开始、结束、步长值实例

    python列表:开始、结束、步长值实例

    这篇文章主要介绍了python列表:开始、结束、步长值实例,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • 推荐一款高效的python数据框处理工具Sidetable

    推荐一款高效的python数据框处理工具Sidetable

    这篇文章主要为大家介绍推荐一款高效的python数据框处理工具Sidetable,文章详细的讲解了Sidetable的安装及用法,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2021-11-11

最新评论