Python3操作MySQL8.XX创建表|CRUD基本操作

news2024/11/25 13:42:46


Python3操作MySQL8.XX创建表|CRUD基本操作

Python3操作SQLite3创建表主键自增长|CRUD基本操作


 

 

一: Python3操作Mysql数据库建表 

import pymysql

'''
  Python3操作Mysql创建表:
'''

# 打开数据库连接 db = pymysql.connect(host="localhost", user="您的用户名", password="您的密码", database="数据库名称", charset='utf8' )
conn = pymysql.connect(user="root", password="123456", host="localhost", database="tope-pay-user", port=3306,
                       charset='utf8', autocommit=False)
cursor = conn.cursor()
cursor.execute("DROP TABLE IF EXISTS sys_books;")
try:
    sql = """
    CREATE TABLE sys_books (
        id BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
        NAME VARCHAR (50) NOT NULL COMMENT '名称',
        category VARCHAR (50) NOT NULL COMMENT '类别',
        price DECIMAL (10, 2) DEFAULT '0.00' COMMENT '价格',
        publish_time datetime DEFAULT NULL COMMENT '出版日期',
        create_time datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
        update_time datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间',
        deleted INT (1) DEFAULT '0' COMMENT '逻辑删除:0--正常 1--删除',
        PRIMARY KEY (id)
      ) ENGINE = INNODB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = COMPACT COMMENT = '数据信息表';   
    """
    cursor.execute(sql)
    print("表[sys_books]", "创建成功")
except pymysql.Error as err:
    print("建表异常: ", err)

finally:
    cursor.close()
    conn.close()

二:  Python3操作Mysql8.xx查看数据库版本信息 

import pymysql

'''
  Python3操作mysql数据
'''
# 打开数据库连接 db = pymysql.connect(host="localhost", user="您的用户名", password="您的密码", database="数据库名称", charset='utf8' )
conn = pymysql.connect(user="root", password="123456", host="localhost", database="tope-pay-user", port=3306,
                       charset='utf8', autocommit=False)
# 创建游标对象
cursor = conn.cursor()
try:
    # 执行查询
    cursor.execute("select version()")
    # 获取单条数据
    resultData = cursor.fetchone()
    print("resultData: ", resultData)
except pymysql.Error as err:
    print("系统异常: ", err)

finally:
    print("释放资源!")
    cursor.close()
    conn.close()

三: 执行结果

D:\program_file_worker\anaconda\python.exe D:\program_file_worker\python_source_work\SSO\grammar\ClassGrammarMysqlExecutorQuery.py 
resultData:  ('8.0.15',)
释放资源!

四: 批量插入数据

import pymysql
import datetime

'''
  Python3操作Mysql批量插入数据:
'''
# 打开数据库连接 db = pymysql.connect(host="localhost", user="您的用户名", password="您的密码", database="数据库名称", charset='utf8' )
conn = pymysql.connect(user="root", password="123456", host="localhost", database="tope-pay-user", port=3306,
                       charset='utf8', autocommit=False)
# 获取游标
cursor = conn.cursor()

try:
    day = datetime.datetime.now()
    # 数据列表
    paramData = [('零基础学Python3', 'Python', '79.00', day, day, day, 0),
                 ('零基础学Java', 'Java', '90.00', day, day, day, 0),
                 ('零基础学C++', 'C++', '70.00', day, day, day, 0),
                 ('零基础学Python数据可视化', 'Python', '49.00', day, day, day, 0),
                 ('零基础学C语言', 'C', '39.00', day, day, day, 0),
                 ('零基础学android', 'Android', '89.00', day, day, day, 0)]
    sql = ("insert into sys_books(name,category,price,publish_time,create_time,update_time,deleted) value"
           "(%s,%s,%s,%s,%s,%s,%s)")
    cursor.executemany(sql, paramData)
    # 手动提交数据
    conn.commit()
    print("批量插入数据成功")
except pymysql.Error as err:
    print("批量插入异常: ", err)
    conn.rollback()
finally:
    print("释放系统资源")
    cursor.close()
    conn.close()

五:  查询数据 

import pymysql

'''
  Python3操作mysql数据
'''
# 打开数据库连接 db = pymysql.connect(host="localhost", user="您的用户名", password="您的密码", database="数据库名称", charset='utf8' )
conn = pymysql.connect(user="root", password="123456", host="localhost", database="tope-pay-user", port=3306,
                       charset='utf8', autocommit=False)
# 创建游标对象
cursor = conn.cursor()
try:
    # 执行查询
    cursor.execute("select version()")
    # 获取单条数据
    resultData = cursor.fetchone()
    print("resultData: ", resultData)
    cursor.execute("select * from sys_books")
    resultList = cursor.fetchall()
    for item in resultList:
        print("数据记录: ", item)
except pymysql.Error as err:
    print("系统异常: ", err)

finally:
    print("释放资源!")
    cursor.close()
    conn.close()

六: 执行结果

D:\program_file_worker\anaconda\python.exe D:\program_file_worker\python_source_work\SSO\grammar\ClassGrammarMysqlExecutorQuery.py 
resultData:  ('8.0.15',)
数据记录:  (1, '零基础学Python3', 'Python', Decimal('79.00'), datetime.datetime(2023, 9, 26, 16, 58, 34), datetime.datetime(2023, 9, 26, 16, 58, 34), datetime.datetime(2023, 9, 26, 16, 58, 34), 0)
数据记录:  (2, '零基础学Java', 'Java', Decimal('90.00'), datetime.datetime(2023, 9, 26, 16, 58, 34), datetime.datetime(2023, 9, 26, 16, 58, 34), datetime.datetime(2023, 9, 26, 16, 58, 34), 0)
数据记录:  (3, '零基础学C++', 'C++', Decimal('70.00'), datetime.datetime(2023, 9, 26, 16, 58, 34), datetime.datetime(2023, 9, 26, 16, 58, 34), datetime.datetime(2023, 9, 26, 16, 58, 34), 0)
数据记录:  (4, '零基础学Python数据可视化', 'Python', Decimal('49.00'), datetime.datetime(2023, 9, 26, 16, 58, 34), datetime.datetime(2023, 9, 26, 16, 58, 34), datetime.datetime(2023, 9, 26, 16, 58, 34), 0)
数据记录:  (5, '零基础学C语言', 'C', Decimal('39.00'), datetime.datetime(2023, 9, 26, 16, 58, 34), datetime.datetime(2023, 9, 26, 16, 58, 34), datetime.datetime(2023, 9, 26, 16, 58, 34), 0)
数据记录:  (6, '零基础学android', 'Android', Decimal('89.00'), datetime.datetime(2023, 9, 26, 16, 58, 34), datetime.datetime(2023, 9, 26, 16, 58, 34), datetime.datetime(2023, 9, 26, 16, 58, 34), 0)
数据记录:  (7, '零基础学Python3', 'Python', Decimal('79.00'), datetime.datetime(2023, 9, 26, 17, 9, 41), datetime.datetime(2023, 9, 26, 17, 9, 41), datetime.datetime(2023, 9, 26, 17, 9, 41), 0)
数据记录:  (8, '零基础学Java', 'Java', Decimal('90.00'), datetime.datetime(2023, 9, 26, 17, 9, 41), datetime.datetime(2023, 9, 26, 17, 9, 41), datetime.datetime(2023, 9, 26, 17, 9, 41), 0)
数据记录:  (9, '零基础学C++', 'C++', Decimal('70.00'), datetime.datetime(2023, 9, 26, 17, 9, 41), datetime.datetime(2023, 9, 26, 17, 9, 41), datetime.datetime(2023, 9, 26, 17, 9, 41), 0)
数据记录:  (10, '零基础学Python数据可视化', 'Python', Decimal('49.00'), datetime.datetime(2023, 9, 26, 17, 9, 41), datetime.datetime(2023, 9, 26, 17, 9, 41), datetime.datetime(2023, 9, 26, 17, 9, 41), 0)
数据记录:  (11, '零基础学C语言', 'C', Decimal('39.00'), datetime.datetime(2023, 9, 26, 17, 9, 41), datetime.datetime(2023, 9, 26, 17, 9, 41), datetime.datetime(2023, 9, 26, 17, 9, 41), 0)
数据记录:  (12, '零基础学android', 'Android', Decimal('89.00'), datetime.datetime(2023, 9, 26, 17, 9, 41), datetime.datetime(2023, 9, 26, 17, 9, 41), datetime.datetime(2023, 9, 26, 17, 9, 41), 0)
释放资源!

Process finished with exit code 0
 


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1043011.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

R语言绘制环状柱状堆积图+分组+显著性

无叠加、显著性的代码: #设置工作环境 rm(listls()) setwd("D:/Desktop/0000/code-main/条形图")#加载R包 library(ggplot2) # Create Elegant Data Visualisations Using the Grammar of Graphics library(tidyverse) # Easily Install and Load the Ti…

联邦学习应用研究现状及发展趋势

本文章主要参考第32届国际人工智能联合会议(IJCAI)上由清华大学人工智能研究院知识工程研究中心(KEG)、北京智谱华章科技有限公司、开放群岛开源社区联合编写的《2023联邦学习全球研究与应用趋势报告》,对重点内容进行…

机器学习算法基础--K-means应用实战--图像分割

目录 1.项目内容介绍 2.项目关键代码 3.项目效果展示 1.项目内容介绍 本项目是将一张图片进行k-means分类,根据色彩k进行分类,最后比较和原图的效果。 题目还是比较简单的,我们只要通过k-means聚类,一类就是一种色彩得出聚类之…

一创聚宽的实盘就要关闭了,有没有好用的实盘平台推荐

挺多的,比较普遍的是QMT和Ptrade,python语言,易上手,通用性好,要说适用性可以考虑Ptrade,问一下你的客户经理有没有,用Ptrade的券商也多,如果之前用一创聚宽你可以无缝切换&#xff…

网络安全内网渗透之DNS隧道实验--dnscat2直连模式

目录 一、DNS隧道攻击原理 二、DNS隧道工具 (一)安装dnscat2服务端 (二)启动服务器端 (三)在目标机器上安装客户端 (四)反弹shell 一、DNS隧道攻击原理 在进行DNS查询时&#x…

python中使用matplotlib绘图

一、背景 当我们在写python程序时,不可避免的需要将数据可视化,也就是绘制出数据的曲线图,以便我们更直观的观察数据间的变化,以及方便对比。此时就要用到matplotlib库了。 matplotlib官方给出的定义是: 翻译过来也就…

SQLAlchemy关联表删除策略设置

目录 SQLAlchemy关联表 常用的级联选项 外键 SQLAlchemy关联表 SQLAlchemy 是一个 Python 的 ORM(对象关系映射)库,它允许你在 Python 中使用类来表示数据库中的表,从而更方便地进行数据库操作。在 SQLAlchemy 中,可…

ElementUI - 主页面--动态树右侧内容管理

一.左侧动态树 1.定义组件 ①样式&数据处理 <template><el-menu class"el-menu-vertical-demo" background-color"#334157"text-color"#fff" active-text-color"#ffd04b" :collapse"collapsed" router :def…

手撸RPC【gw-rpc】

文章目录 基于 Netty 的简易版 RPC需求分析简易RPC框架的整体实现协议模块 &#x1f4d6;自定义协议 &#x1f195;序列化方式 &#x1f522; 服务工厂 &#x1f3ed;服务调用方 ❓前置知识——动态代理&#x1f573;️Proxy类InvocationHandler 接口 RPC服务代理类内嵌Netty客…

轻松学会 Git(三):掌握 Git 的远程操作

文章目录 前言一、分布式版本控制系统的理解1.1 什么是分布式版本控制系统&#xff1f;1.2 工作原理1.3 分布式版本控制系统的优势 二、初识 Git 远程仓库2.1 远程仓库的概念2.2 Git 远程操作2.3 远程仓库托管服务 三、新建远程仓库四、克隆远程仓库到本地4.1 使用 HTTPS 方式克…

记录一下 malloc 是如何分配内存的

系统深入学习笔记-malloc 以 32 位系统为例&#xff0c;&#xff0c;通过这张图你可以看到&#xff0c;用户空间内存从低到高分别是 6 种不同的内存段&#xff1a; 代码段&#xff0c;包括二进制可执行代码&#xff1b;数据段&#xff0c;包括已初始化的静态常量和全局变量B…

MySQL ——多条件查询(like)

一、基本语法 MySQL LIKE多条件查询语句的基本语法如下&#xff1a; SELECT * FROM table WHERE column1 LIKE %value1% AND column2 LIKE %value2%; 二、说明 在上面的多条件查询语句中&#xff0c;%是通配符&#xff0c;表示任意字符。如果您在LIKE语句中使用%字符&#x…

刚学习编写代码时的愚蠢瞬间:初学者的代码经验分享

刚学习编写代码时的愚蠢瞬间&#xff1a;初学者的代码经验分享 刚学习编写代码时的愚蠢瞬间&#xff1a;初学者的代码经验分享摘要引言糟糕的变量命名&#x1f937;‍♂️ 问题&#x1f605; 解决方案 异常处理的忽略&#x1f648; 问题&#x1f60e; 解决方案 魔法数值的滥用&…

沈阳市浑南区、沈阳国际软件园领导一行莅临中睿天下总部考察指导

近日&#xff0c;沈阳市浑南区委常委、常务副区长傅涵&#xff0c;沈阳国际软件园总经理张永鹏一行会见了中睿天下高级合伙人兼市场负责人周学龙。沈阳高新区管委会经发局局长王博&#xff0c;沈阳高新区管委会投资促进局姜振杰&#xff0c;沈阳国际软件园驻京办主任王军超&…

基础数据标准落标白皮书

1.定义 数据是由特定的环境产生的&#xff0c;这些环境因素包括生产者、时间、系统等&#xff0c;这就造成了同一个语义的数据&#xff0c;会有多种不同的定义方法&#xff0c;这给后期进行数据汇集和整合带来障碍&#xff0c;因此&#xff0c;数据处理的前奏就是数据标准化&a…

公司文件加密防泄密软件有哪些?企业防泄密软件都有哪些功能?

在当今的信息化时代&#xff0c;数据已经成为了企业的重要资产。其中&#xff0c;公司内部的文件、文档、数据库等数据安全至关重要。然而&#xff0c;随着网络攻击手段的不断升级&#xff0c;企业数据泄露事件屡见不鲜&#xff0c;给企业带来了巨大的经济损失和声誉损害。因此…

Rust 围炉札记

文章目录 一、安装 一、安装 Rust in Visual Studio Code Rust 官网 windows系统下Rust环境搭建以及vscode调试环境配置 123

香橙派OrangePi的风扇怎么接

跟树莓派类似&#xff0c;看主板上GPIO口的阵脚定义 树莓派的引脚定义官网&#xff1a;Raspberry Pi Documentation - Raspberry Pi hardware 树莓派的4口和6口可以接一个5V小风扇&#xff0c;4口接正极&#xff0c;6口接负极即可&#xff0c;由于接口相近&#xff0c;可以用于…

爬楼梯Java(斐波那契数列)

题目:有n阶楼梯,一次只能爬一层或者两层,请问有多少种方法? 这类题目其实都可以用斐波那契数列来解决,比如: 一阶楼梯只有一种方法 二阶楼梯有(11,2)两种方法 三阶楼梯有(111,12,21)三种方法 四阶楼梯有(1111,121,112,22,211)五种方式 五阶楼梯有(11111,1112,122,1211,1…

云原生之使用Docker部署RSS阅读器Huntly

云原生之使用Docker部署RSS阅读器Huntly 一、Huntly介绍1.1 Huntly简介1.2 Huntly功能2.1 本地环境规划2.2 本次实践介绍 三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本 四、下载Huntly镜像五、部署Huntly5.1 创建挂载目录5.2 创建Hun…