Python使用pymysql执行DML语句

先创建连接

复制代码
import pymysql

connection = None

try:
    # 建立数据库连接
    connection = pymysql.connect(
        host='localhost',
        user='root',
        password='root',
        database='mydatabase',
        autocommit=True #设置自动提交
    )

    #游标对象
    cursor = connection.cursor()


except Exception as e:
    print(e)
finally:
    if connection:
        connection.close()

执行select查询操作

复制代码
    #执行查询语句
    cursor.execute('select * from users')

    #获取查询的所有结果
    result = cursor.fetchall()
    print(result,type(result)) #  <class 'tuple'>

    for row in result:
        print(row)

执行insert插入操作

执行修改操作,需要通过Connection对象调用commit()方法确认提交,或者构造方法里面,autocommit设置Ture,自动提交

复制代码
    #执行插入操作
    cursor.execute("insert into users values (null,'王五','wangwu@163.com',25,now(),'13664447879')")
    #获取主键
    print("主键id=",connection.insert_id()) #主键id= 3
    #确认提交
    connection.commit()


  #设置自动提交

    # 建立数据库连接
    connection = pymysql.connect(
        host='localhost',
        user='root',
        password='root',
        database='mydatabase',
        autocommit=True #设置自动提交
    )
    
      #执行插入操作
    cursor.execute("insert into users values (null,'赵六','zhaoliu@163.com',25,now(),'13664447879')")
    #获取主键
    print("主键id=",connection.insert_id()) #主键id= 3
    # #确认提交
    # connection.commit()

执行update操作

执行update操作,与insert操作类似

复制代码
    #执行update更新操作
    cursor.execute("update users set age = 20 where id = 3 ")
    # #确认提交
    # connection.commit()

执行delete操作

复制代码
    #执行delete更新操作
    cursor.execute("delete from users where id = 3 ")
    # #确认提交
    # connection.commit()
相关推荐
做怪小疯子7 小时前
华为笔试0429
python·numpy
Warson_L7 小时前
Dictionary
python
寒山李白9 小时前
解决 python-docx 生成的 Word 文档打开时弹出“无法读取内容“警告
python·word·wps·文档·docx·qoder
2401_8323655210 小时前
JavaScript中rest参数(...args)取代arguments的优势
jvm·数据库·python
Sirius.z10 小时前
第J3周:DenseNet121算法详解
python
2301_7796224111 小时前
Go语言怎么用信号量控制并发_Go语言semaphore信号量教程【入门】
jvm·数据库·python
2301_7662834411 小时前
c++如何将控制台输出保存到文件_cout重定向到txt【详解】
jvm·数据库·python
小康小小涵12 小时前
基于ESP32S3实现无人机RID模块底层源码编译
linux·开发语言·python
lzjava202412 小时前
Python的函数
开发语言·python
Awesome Baron13 小时前
skill、tool calling、MCP区别
开发语言·人工智能·python