python将数据插入数据库的案例分析(python,将数,数据库,开发技术)

时间:2024-04-29 21:30:23 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

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

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

python将数据插入数据库的案例分析

实现代码:

#导入需要使用到的数据模块importpandasaspdimportpymysql#读入数据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
 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:python将数据插入数据库的案例分析的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:C++的this指针实例分析下一篇:

4 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18