以下代码实现环境是mac系统,本地配置mysql服务端和navicat premium客户端,python环境是配置了pymysql的anaconda3。
首先,与数据库建立connection和进行操作的原理
(1)通过navicat premium创建testdataset数据库和库内数据表test:
1
2
3
4
5
6
|
create table `test` ( ` id ` int ( 10 ) not null auto_increment, `name` varchar( 20 ) default null, `age` int ( 10 ) default null, primary key (` id `) ) engine = innodb default charset = utf8; |
(2)在test数据表里添加数据项
(3)jupyter notebook里连接数据库,并对数据库进行操作
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
import pandas as pd import datetime import pymysql #创建连接 conn = pymysql.connect(host = '127.0.0.1' , port = 3306 , user = 'root' , passwd = '******' , db = 'testdataset' , charset = 'utf8' ) #passwd是本地mysql服务器密码 conn #output:<pymysql.connections.connection at 0x11443e588> #创建游标 cursor = conn.cursor() cursor #output:<pymysql.cursors.cursor at 0x11443e2e8> #执行sql,并返回受影响行数 effect_row = cursor.execute( "select * from test" ) effect_row #output:4 #获取剩余结果的第一行数据 r1 = cursor.fetchone() r1 #output:(1, '李明', 18) name = '王天' age = 17 sql = "select name,age from test where name='%s' and age='%s'" % (name,age) row_count = cursor.execute(sql) row_1 = cursor.fetchone() print (row_count,row_1) #output:1 ('王天', 17) conn.commit() cursor.close() conn.close() |
总结
以上所述是小编给大家介绍的python3数据库操作包pymysql的操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:https://blog.csdn.net/cymy001/article/details/81049493