欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python3数据库操作包pymysql的操作方法

程序员文章站 2023-11-04 11:00:04
以下代码实现环境是mac系统,本地配置mysql服务端和navicat premium客户端,python环境是配置了pymysql的anaconda3。 首先,与数据库...

以下代码实现环境是mac系统,本地配置mysql服务端和navicat premium客户端,python环境是配置了pymysql的anaconda3。

首先,与数据库建立connection和进行操作的原理

Python3数据库操作包pymysql的操作方法

(1)通过navicat premium创建testdataset数据库和库内数据表test:

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;

Python3数据库操作包pymysql的操作方法

(2)在test数据表里添加数据项

Python3数据库操作包pymysql的操作方法

(3)jupyter notebook里连接数据库,并对数据库进行操作

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的操作方法,希望对大家有所帮助