python & pandas链接mysql数据库

Posted 数据之风

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python & pandas链接mysql数据库相关的知识,希望对你有一定的参考价值。

Python&pandas与mysql连接

1、python 与mysql 连接及操作,直接上代码,简单直接高效:
 

 1 import MySQLdb
 2 
 3 try:
 4 
 5     conn = MySQLdb.connect(host=\'localhost\',user=\'root\',passwd=\'×××××\',db=\'test\',charset=\'utf8\')
 6 
 7     cur = conn.cursor()
 8 
 9     cur.execute(\'create table user(id int,name varchar(20))\' )
10 
11    
12 
13     value = [1,\'jkmiao\']
14 
15     cur.execute("insert into user values(%s,%s)",value)
16 
17  
18 
19     users = []
20 
21  
22 
23     for i in range(20):
24 
25         users.append((i,"user"+str(i)))
26 
27  
28 
29     cur.executemany("insert into user values(%s,%s)",users)
30 
31  
32 
33     cur.execute("update user set name="test" where id=2")
34 
35   
36 
37     res = cur.fetchone()
38 
39     print res
40 
41  
42 
43     res = cur.fetchmany(10)
44 
45     print res
46 
47  
48 
49     print cur.fetchall()
50 
51    
52 
53     conn.commit()
54 
55     cur.close()
56 
57     conn.close()   
58 
59     cur.execute(\'select * from user\')
60 
61     cur.close()
62 
63     conn.close()
64 
65 except MySQLdb.Error,e:
66 
67      print "Mysql Error %d: %s" % (e.args[0], e.args[1])  

 

 

2、pandas 连接操作mysql:

 1 import pandas as pd
 2 
 3 import MySQLdb
 4 
 5  
 6 
 7 conn = MySQLdb.connect(host="localhot",user="root",passwd="*****",db="test",charset="utf8")
 8 
 9  
10 
11 # read
12 
13 sql = "select * from user limit 3"
14 
15 df = pd.read_sql(sql,conn,index_col="id")
16 
17 print df
18 
19  
20 
21 # write
22 
23 cur = conn.cursor()
24 
25 cur.execute("drop table if exists user")
26 cur.execute(\'create table user(id int,name varchar(20))\' )
27 pd.io.sql.write_frame(df,"user",conn)

 

 

以上是关于python & pandas链接mysql数据库的主要内容,如果未能解决你的问题,请参考以下文章

牛客编程题python数据分析49题(pandas库的使用)

python & pandas学习札记

Python & Pandas:当 Pandas 将直方图绘制到特定轴时的奇怪行为

python---pandas

找不到 Python Quandl&Pandas 语法错误

备战数学建模29 & 科研必备 Python之pandas时间序列