python3导入sql文件

导入1

import logging
import pymysql

# 定义连接参数
db_config = {
   
    "host": "192.168.0.52",
    "user": "root",
    "password": "S3spxRSi2P",
    "port": 8541,
    "database": "sport01"
}

# 配置日志记录
logger = logging.getLogger()
logger.setLevel(logging.INFO)  # 设置日志级别为 INFO
handler = logging.StreamHandler()
handler.setFormatter(logging.Formatter("%(asctime)s - %(levelname)s - %(message)s"))
logger.addHandler(handler)

try:
    # 连接数据库
    with pymysql.connect(**db_config) as conn:
        with conn.cursor() as cursor:
            with open("test.sql", "r", encoding="utf-8") as f:
                sql_content = f.read()
                cursor.execute(sql_content)
                logger.info("SQL 语句执行成功")

            conn.commit()  # 提交事务
except pymysql.Error as e:
    logger.error("SQL 执行错误: %s", e)

导入2 先导入DDL再导入DML

import logging
import pymysql

# 定义连接参数
db_config = {
   
    "host": "192.168.0.52",
    "user": "root",
    "password": "S3spxRSi2P",
    "port": 8541,
    "database": "sport01"
}

# 配置日志记录
logger = logging.getLogger()
logger.setLevel(logging.INFO)  # 设置日志级别为 INFO
handler = logging.StreamHandler()
handler.setFormatter(logging.Formatter("%(asctime)s - %(levelname)s - %(message)s"))
logger.addHandler(handler)

try:
    # 连接数据库
    with pymysql.connect(**db_config) as conn:
        with conn.cursor() as cursor:
            # 设置编码
            cursor.execute("SET NAMES utf8mb4")

            # 执行 DDL 语句
            cursor.execute(open("DDL.sql", "r", encoding="utf-8").read())
            logger.info("执行 DDL 语句成功")

            # 执行 DML 语句
            cursor.execute(open("DML.sql", "r", encoding="utf-8").read())
            logger.info("执行 DML 语句成功")

            conn.commit()  # 提交事务
except pymysql.Error as e:
    logger.error("SQL 执行错误: %s", e)

相关推荐

  1. python3导入sql文件

    2024-01-16 17:38:05       50 阅读
  2. mysql导入sql文件

    2024-01-16 17:38:05       33 阅读
  3. vue3导入文件夹导入文件导出zip、导出

    2024-01-16 17:38:05       56 阅读
  4. c# sqlite导出导入数据表 作为sql文件

    2024-01-16 17:38:05       38 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-16 17:38:05       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-16 17:38:05       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-16 17:38:05       82 阅读
  4. Python语言-面向对象

    2024-01-16 17:38:05       91 阅读

热门阅读

  1. HTTP基本概念

    2024-01-16 17:38:05       61 阅读
  2. go语言中的GoMock

    2024-01-16 17:38:05       44 阅读
  3. 视觉处理之仿射变换

    2024-01-16 17:38:05       55 阅读
  4. 数据库系统原理总结之——数据管理技术的发展

    2024-01-16 17:38:05       58 阅读
  5. 分布式锁的几种实现方式:

    2024-01-16 17:38:05       50 阅读
  6. ChatGPT绘画生成软件MidTool:智能艺术的新纪元

    2024-01-16 17:38:05       134 阅读
  7. 关于小程序短剧视频特点及解析

    2024-01-16 17:38:05       59 阅读