python mysql
2022-09-14 本文已影响0人
呦丶耍脾气
创建数据库表、插入、更新、删除等操作都是使用execute()执行原生方法
import MySQLdb
# 创建插入更新删除等操作使用execute执行原生sql即可
# 打开数据库连接
db = MySQLdb.connect("127.0.0.1", "root", "123456", "zgjsks_huodong", charset='utf8' )
# 使用cursor()方法获取操作游标
cursor = db.cursor()
# SQL 插入语句
sql = "INSERT INTO EMPLOYEE(FIRST_NAME, \
LAST_NAME, AGE, SEX, INCOME) \
VALUES (%s, %s, %s, %s, %s )" % \
('Mac', 'Mohan', 20, 'M', 2000)
try:
# 执行sql语句
cursor.execute(sql)
# 提交到数据库执行,支持事务
db.commit()
except:
# 发生错误时回滚
db.rollback()
# 关闭数据库连接
db.close()
查询
- fetchone(): 该方法获取下一个查询结果集。结果集是一个对象
- fetchall():接收全部的返回结果行.
- rowcount: 这是一个只读属性,并返回执行execute()方法后影响的行数。
import MySQLdb
db = MySQLdb.connect('127.0.0.1','root','123456','zgjsks_huodong',charset='utf8')
# 使用cursor()方法获取操作游标
cursor = db.cursor()
sql = 'select * from js_admin'
cursor.execute(sql)
results = cursor.fetchall()
for row in results:
print('id: {} name: {}'.format(row[0],row[1]))
db.close()
#id: 1 name: root
#id: 2 name: nm_zgjsks