python 连接 mysql 数据库

用 PyMySQL 包来连接Python和MySQL。在使用前需要先通过 pip 来安装 PyMySQL包:

在windows 系统中打开cmd,输入

pip install PyMySQL 

1、安装完成后,就可以使用以下连接代码:

# -*- encoding: utf-8 -*-
import pymysql
# 数据库的各种配置
DBHOST = 'localhost'
DBUSER = 'root'
DBPASS = 'root123'
DBNAME = 'test'
charset = 'utf8'
db = None

def createTable(db):
    # 创建新表
    # 1、 声明一个游标
    cur = db.cursor()
    # 2、创建表之前先检查是否存在,如果存在则删除
    cur.execute('DROP TABLE IF EXISTS Student')
    # 3、输入创建新表的sql语句
    sqlQuery = "CREATE TABLE Student(Name CHAR(20) NOT NULL ,Email CHAR(20),Age int)"
    # 4、 运行mysql代码
    cur.execute(sqlQuery)

def insertDate(db):
    # 插入数据
    # 1、 声明一个游标
    cur = db.cursor()
    # 2、编写sql语句
    sqlQuery = " INSERT INTO Student (Name, Email, Age) VALUE (%s,%s,%s) "
    # 3、设置具体的数据
    value = ('jake', '123456@qq.com', 20)
    cur.execute(sqlQuery,value)
    db.commit()
    print('数据插入成功!')

def selectDate(db):
    #查询全部数据
    cur = db.cursor()

    # 这里输入sql语句
    sqlQuery = "SELECT * FROM Student"
    col = cur.execute(sqlQuery)  # 查询之前需要先运行sql语句
    results = cur.fetchall()  # 只有上面先运行了sql语句这句话才可以运行成功
    print(col)  # 结果为影响的条数
    for row in results:
        name = row[0]
        email = row[1]
        age = row[2]
        print('Name:%s,Email:%s,Age:%s' % (name, email, age))

def deleteDate(db):
    # 删除表中的数据
    cur = db.cursor()
    # 这里输入sql语句
    sqlQuery = "delete from student where name=%s"
    value = ('John')

    cur.execute(sqlQuery, value)
    db.commit()
    print('数据更新成功!')

def upDate(db):
    try:
        # 更新表中的数据
        cur = db.cursor()   # 创建游标
        sqlQuery = "UPDATE Student SET Name= %s WHERE Name=%s"
        value = ('Alen','jake')
        cur.execute(sqlQuery,value)
        db.commit()
        print('数据更新成功!')
    except pymysql.Error as er:
        print("数据更新失败:"+str(er))
        # 数据更新失败,数据库回滚
        db.rollback()

def deleteTable(db):
    try:
        # 删除一张表
        cur = db.cursor()
        sqlQuery = 'DROP TABLE IF EXISTS Student'
        cur.execute(sqlQuery)
        db.commit()
        print('数据表删除成功!')
    except pymysql.Error as er:
        print('数据表删除失败:'+str(er))
        db.rollback()

# 连接数据库
try:
    db = pymysql.connect(host=DBHOST, user=DBUSER, password=DBPASS, database=DBNAME, charset=charset)
    print('数据库连接成功')
    deleteTable(db)   # 这里是调用删除表函数,替换这里的函数名,实现对数据库不同的操作
except pymysql.Error as error:
    print('数据库连接失败' + str(error))

db.close()

以上就是通过 python 对mysql 数据库的 增、删、改、查 的基本操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值