数据库(三): DBAPI, pymysql

'''
1. 连接数据库
config = {
'host': '127.0.0.1',
'port':3306,
'user':'root',
'password':'123456',
'db':'test'
}
conn = pymsql.connect(**config)

2. 创建游标
cursor = conn.cursor() # 默认返回为tuple组成的tuple
cursor = conn.cursor(pymsql.cursors.DictCursor) # 返回dict组成的list

3. 执行sql语句
row = cursor.execute('sql') # 最后一条数据的自增ID
# 对于增删改必须要提交事务才能生效
conn.commit()
# 对于查
data = cursor.fetchall() # 取所有
data = cursor.fetchone() # 取一个, 没有外部的数据结构包装
data = cursor.fetchmany(3) # 接着上一次游标位置继续取三个

4. 结束关闭游标, 关闭连接
cursor.close()
conn.close()

''' # pymsql操作步骤

import pymysql
'''
连接到已有的数据库
'''
config = {
'host':'127.0.0.1',
'port':3306,
'user':'root',
'password':'123456',
'db':'test'
}

conn = pymysql.connect(**config)

'''
操作基于cursor游标,基于事务,要提交事务才生效(insert delete update), 不能用with语句
'''
cursor = conn.cursor() # 取数据返回tuple组成的tuple, 数据不可更改
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor) # 取数据返回dict组成的list, 数据可更改; 默认为tuple组成的tuple

sql = '''
CREATE TABLE IF NOT EXISTS py_table(
id int primary key,
name varchar
)
'''
row_affected = cursor.execute(sql) # 执行后会返回游标位置
conn.commit() # 增删改需要提交(事务)才能生效

cursor.execute('select * from py_table')
data = cursor.fetchone() # 取一个
data = cursor.fetchmany(3) # 接着取三个
data = cursor.fetchall() # 取完

cursor.scroll(-1,mode='relative') # cursor游标向上移动一个,“+1” 为向下移动一个
cursor.scroll(1,mode='absolute') # cursor游标移动到位置1

cursor.close()
conn.close()

转载于:https://www.cnblogs.com/lancelotxly/p/10857006.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值