关于Python的MySQLdb模块的数据操作

Python操作MySQL

在Python使用MySQL之前,先要保证已经下载好了MySQLclient(MySQLdb),确保Python已经有了MySQLdb模块。

下面以简单实例来学习:

# coding:utf-8

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost", "root", "root", "forum", charset = "utf8")
# 使用cursor()方法获取操作游标
cursor = db.cursor()
# 使用execute方法执行SQL语句
cursor.execute("show tables")
# 使用fetchone获取一条数据
data = cursor.fetchone()
# 使用fetchall获取所有数据
datas = cursor.fetchall()

print ("table one : %s" % data)
print ("table all : " , datas)

# 关闭数据库
db.close()

下面再展示一下数据库的增删查改。

插入数据

# coding:utf-8

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost", "root", "root", "forum", charset = "utf8")
# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL 插入语句
sql = """INSERT INTO root(name,password)
                values("python", "123456")"""
try:
    # 执行SQL语句
    cursor.execute(sql)
    # 提交到数据库
    db.commit()
except:
    # 回滚
    db.rollback()

# 关闭数据库
db.close()

注意:

  • 三引号:Python允许一个字符串跨多行,可包含换行符,制表符等;同时三引号也可以作为注释

  • commit():修改数据的操作需要提交才能写入到数据库中。

删除数据

# coding:utf-8

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost", "root", "root", "forum", charset = "utf8")
# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL 删除语句
sql = "DELETE FROM ROOT WHERE id = %s" % (3)

try:
    # 执行SQL语句
    cursor.execute(sql)
    # 提交到数据库
    db.commit()
except:
    # 回滚
    db.rollback()

# 关闭数据库
db.close()

查询数据

# coding:utf-8

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost", "root", "root", "forum", charset = "utf8")
# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL 查询语句
sql = "SELECT * FROM root where id < %s" % (20)


try:
    # 执行SQL语句
    cursor.execute(sql)
    # 获取所有记录列表
    result = cursor.fetchall()
    print ("dates : " ,result)
	# 获取到每个字段
    for row in result:
        id = row[0]
        username = row[1]
        password = row[2]
        print ("id: %s , username: %s, password: %s" % (id, username, password))

except:
    print ("Error Query ...")

# 关闭数据库
db.close()

输出结果:

dates :  ((1, 'root', 'root'), (2, 'python', '123456'))
id: 1 , username: root, password: root
id: 2 , username: python, password: 123456

修改数据

# coding:utf-8

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost", "root", "root", "forum", charset = "utf8")
# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL 更新语句
sql = "UPDATE root set password = %s where id = %s" % ("1234", 2)

try:
    # 执行SQL语句
    cursor.execute(sql)
    # 提交到数据库
    db.commit()
    
except:
    # 回滚
    print ("Error Update ...")
    db.rollback()

# 关闭数据库
db.close()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值