jupyter notebook读取及写入MySQL数据库


一.读取数据

1.import pymysql #导入模块

2.设置连接数据库

conn = pymysql.connect(
host='localhost',
user='root',
password='root',
database='text',
charset='utf8')

3.开始读取数据库数据

mysql_page = pd.read_sql("select * from Seven", con=conn)

 

二.写入数据

1.from sqlalchemy import create_engine #导入模块

2.engine = create_engine("mysql+pymysql://root:root@127.0.0.1:3306/text?charset=utf8") #设置连接数据库

两个root分别代表数据库的账号和密码,127.0.0.1为本地数据库,3306是端口号,text为数据库名字,charset=utf8是字符集。格式顺序不要动,@?不要去掉。

3.with engine.begin() as conn:

  hechengbiao.to_sql(name='cunganbu',con=conn,if_exists = "replace",index=False) #写入MYSQL

  • name
    导入到mysql时表的名字
    如果mysql里面已经用CREATE TABLE创建好了表,那么就是该表名字
    如果mysql没有创建好表,那么可以自己起一个合适的表名

  • con
    数据库连接,需要安装sqlalchemy库,目前仅支持sqlalchemy库创建的连接,pymysql库创建的连接不支持

  • if_exists:以下三个选项,是如果数据库里面已经存在该表的意思
    "fail":直接报错,不再操作,类似mysql创建表时的IF NOT EXISTS才创建表
    "replace":先删除该表,然后再创建
    "append":直接在表后面添加数据

  • index:bool
    是否把DataFrame的索引列写入表中

  • index_label
    如果要把DataFrame的索引列写入表中,那么需要给出该索引列的名字,如果没给的话,那就会用DataFrame的列索引名

注意事项:
con 参数一定要仔细核对,否则数据库会连接失败,可参照上面给出的例子按自己的实际数据库位置进行更改


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM