当前位置: 首页 > article >正文

Python模块—PyMySQL模块

PyMySQL模块

标准化数据库连接格式(后续会持续更新)

# 创建数据库
create_database = """
CREATE DATABASE IF NOT EXISTS students
"""

# 选择数据库
choice_database = """
use students
"""

# 建表
create_users_table = """
CREATE TABLE IF NOT EXISTS users(
    id INT AUTO_INCREMENT,
    name TEXT NOT NULL,
    age INT,
    gender TEXT,
    PRIMARY KEY (id)
)
"""

# 插入记录,注意:`users`, `name`, `age`, `gender`,不是引号包裹,是键盘左上角的撇号
insert_users = """
INSERT INTO 
`users` (`name`, `age`, `gender`)
VALUES
('zhangsan',23,'male'),
('lisi',24,'female'),
('wangwu',25,'male');
"""

# 更改
update_users = """
UPDATE `users` set `name`='jack' where `name` = 'zhangsan'
"""

# 查询
select_users = "SELECT * FROM users"

# 删除记录
delete_user = """
DELETE from users where `name`="lisi"
"""

# 删除表
drop_table = "DROP table users"

# 删除数据库
drop_database = "DROP database students"

Python-连接mysql数据库代码

from pymysql import connect, Error

class Mysql:
    """初始化Mysql数据库"""
    def __init__(self, hostname, port, username, password):
        self.hostname = hostname
        self.port = port
        self.username = username
        self.password = password

    """创建数据库连接对象"""
    def conn_db(self):
        try:
            conn = connect(host=self.hostname, port=self.port, user=self.username, password=self.password)
            return conn
        except Error as e:
            print(e)

    """执行SQL语句"""
    def exec_sql(self, sql):
        connection = None
        try:
            connection = self.conn_db()
            with connection.cursor() as cursor:
                cursor.execute(create_database)
                cursor.execute(choice_database)
                cursor.execute(sql)
                if 'CREATE' in sql or 'INSERT' in sql or 'UPDATE' in sql or 'DELETE' in sql or 'DROP' in sql:
                    connection.commit()
                    print("数据操作成功!")
                elif 'SHOW' in sql or 'SELECT' in sql:
                    result = cursor.fetchall()
                    print(f"result:{result}")
                    print("数据库读取成功!")
        except Error as e:
            print(e)
        finally:
            connection.close()


if __name__ == '__main__':
    open_sql = Mysql(hostname='127.0.0.1', port=3306, username='root', password='123456')
    sqls = [create_users_table, insert_users, update_users, delete_user, drop_table, drop_database]
    for sql in sqls:
        open_sql.exec_sql(sql)

http://www.kler.cn/a/37762.html

相关文章:

  • Vue和React的区别?
  • Java设计模式之行为型-责任链模式(UML类图+案例分析)
  • 可靠的手机问题修复工具分享 - 修复各种 Android 系统问题
  • el-checkbox和el-switch绑定一个Number值
  • ffmpeg分离左右声道到多音轨
  • python爬虫-获取headers(报文头)关键参数实例小记
  • 【雕爷学编程】Arduino动手做(06)---KY-038声音传感器模块4
  • 【仲裁器】轮询仲裁round-robin,rr
  • python 把txt文本的log日志倒序处理
  • TypeScript 学习笔记(二):接口与类型别名、字面量类型
  • 云和DevOps如何帮助加速数字化转型?
  • 万字解读 | 数据可视化平台--FineBI
  • Failed to connect to github.com port 443: Connection refused问题解决
  • 云计算的学习(二)
  • 6. 原型、原型链
  • 直流有刷电机
  • 【C】字符串函数和内存函数的介绍
  • 【分布式应用】Filebeat+ELK 部署、logstash filter四大过滤插件
  • 集群基础4——haproxy负载均衡mariadb
  • 【问题解决】VSCode 远程安装插件特别慢