mysql py支持_pymysql常用操作

安装pymysql

pymysql是python3+的一个包(python2使用的是MySQLdb),安装起来比较简单。

pip install pymysql

建立连接

import pymysql

conn = pymysql.connect(

host='XX.XX.XX.XX',

user='user_name',

password='passwd',

database='db_name',

charset='utf8')

测试连接

with conn.cursor() as cursor:

sql = "SELECT version()"

cursor.execute(sql)

res = cursor.fetchone()

print("MySQL version: %s" % res)

新建table(表名mytable2)

with conn.cursor() as cursor:

cursor.execute("DROP TABLE IF EXISTS mytable2") # 如果存在,删除同名table

sql = '''

create table mytable2 (

id int not null auto_increment primary key,

symbol char(6) not null,

name varchar(255) not null,

area varchar(255),

industry varchar(255),

listed_date varchar(255)

) engine=innodb default charset=utf8

'''

cursor.execute(sql)

print('create table ok!')

添加一条新记录

# 创建一条新的记录

with conn.cursor() as cursor:

sql = "INSERT INTO mytable2 (symbol,name,area,industry,listed_date) VALUES ('210099','test','浙江','电器仪表','20120127')"

cursor.execute(sql)

# 或者

# sql = "INSERT INTO mytable2 (symbol,name,area,industry,listed_date) VALUES (%s,%s,%s,%s,%s)"

# values = ('220012','test2','江苏','太阳能','20150206') # 元祖或列表

# cursor.execute(sql, values)

# 连接完数据库并不会自动提交,所以需要手动 commit 你的改动

conn.commit()

print("insert done")

添加多条新记录

# 创建多条新的记录

with conn.cursor() as cursor:

sql = "INSERT INTO mytable2 (symbol,name,area,industry,listed_date) VALUES (%s,%s,%s,%s,%s)"

values = [('220016','test6','江苏','太阳能','20150206'),

('220017','test7','江苏','太阳能','20150206'),

('220018','test8','江苏','太阳能','20150206')]

cursor.executemany(sql, values)

# 连接完数据库并不会自动提交,所以需要手动 commit 你的改动

conn.commit()

print("insert done")

获取数据

with conn.cursor(cursor=pymysql.cursors.DictCursor) as cursor:

sql = "SELECT * FROM mytable2"

cursor.execute(sql)

res = cursor.fetchall()

data = pd.DataFrame(res)

data

或者

sql = "SELECT * from mytable2"

data = pd.read_sql(sql,conn)

data

常用命令

SHOW TABLES #查看所有表

SHOW COLUMNS FROM table_name #查看表字段

DESCRIBE table_name #查看表字段(也可以DESC table_name)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值