这篇文章将为大家详细讲解有关python3 pandas然后后读取MySQL数据和插入,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
python 代码如下:
# -*- coding:utf-8 -*-
import pandas as pd
import pymysql
import sys
from sqlalchemy import create_engine
def read_mysql_and_insert():
try:
conn = pymysql.connect(host='localhost',user='user1',password='123456',db='test',charset='utf8')
except pymysql.err.OperationalError as e:
print('Error is '+str(e))
sys.exit()
try:
engine = create_engine('mysql+pymysql://user1:123456@localhost:3306/test')
except sqlalchemy.exc.OperationalError as e:
print('Error is '+str(e))
sys.exit()
except sqlalchemy.exc.InternalError as e:
print('Error is '+str(e))
sys.exit()
try:
sql = 'select * from sum_case'
df = pd.read_sql(sql, con=conn)
except pymysql.err.ProgrammingError as e:
print('Error is '+str(e))
sys.exit()
print(df.head())
df.to_sql(name='sum_case_1',con=engine,if_exists='append',index=False)
conn.close()
print('ok')
if __name__ == '__main__':
df = read_mysql_and_insert()
另外需要注意的还有。
1) test数据库里有两个表,建表语句如下:
CREATE TABLE `sum_case` (
`type_id` tinyint(2) DEFAULT NULL,
`type_name` varchar(5) DEFAULT NULL,
KEY `b` (`type_name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `sum_case_1` (
`type_id` tinyint(2) DEFAULT NULL,
`type_name` varchar(5) DEFAULT NULL,
KEY `b` (`type_name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
插入初始数据
insert into sum_case (type_id,type_name) values (1,'a'),(2,'b'),(3,'c')
2)创建user1用户
grant select, update,insert on test.* to 'user1'@'localhost' identified by '123456'
python的数据类型有哪些?
python的数据类型:1. 数字类型,包括int(整型)、long(长整型)和float(浮点型)。2.字符串,分别是str类型和unicode类型。3.布尔型,Python布尔类型也是用于逻辑运算,有两个值:True(真)和False(假)。4.列表,列表是Python中使用最频繁的数据类型,集合中可以放任何数据类型。5. 元组,元组用”()”标识,内部元素用逗号隔开。6. 字典,字典是一种键值对的集合。7. 集合,集合是一个无序的、不重复的数据组合。
关于“python3 pandas然后后读取MySQL数据和插入”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。