国产数据库oceanBbase,达梦,金仓与mysql数据库的性能对比 四、python读mysql写入达梦数据库

一、说明

安装达梦的驱动

pip install dmPython==2.5.5

参数接收那里,其他数据库都是用%,达梦要用?

二、源码

复制代码
#coding=utf-8
import pymysql
import dmPython
import time
import uuid

#pip install dmPython==2.5.5

#测试单表插入性能达梦

try:
    start_time = time.time()  # 记录开始时间
    connection1 = pymysql.connect(host='192.168.0.100', user='user', password='passwd', database='testdb', charset='gbk',  port=3306)


    #达梦
    connection2 = conn = dmPython.connect(host='192.168.0.99', port=5237, user='user',  password='pass' )



    # 操作数据库
    cursor1 = connection1.cursor()  # 创建一个游标

    # 操作数据库
    cursor2 = connection2.cursor()  # 创建一个游标

    # 定义SQL查询语句,使用%s作为参数占位符
    sql = "SELECT  ID,NAME,CONTENT,CREATE_TIME FROM DB_TEST_T"

    for i in range(80):
        print("------i:",i)
        # 执行SQL查询
        cursor1.execute(sql)

        # 获取查询结果
        rows = cursor1.fetchall()
        data_to_insert = []
        for row in rows:

            # 插入数据到数据表的sql语句
            insert_data_sql = """insert into DB_TEST_T
                                        (
                                          ID,		NAME,		CONTENT,		CREATE_TIME
                                        )
                                        values
                                        (
                                          ?,  	    ?,          ?,  			?
                                        );"""
            random_uuid = uuid.uuid4()
			data = (str(random_uuid), row[1], row[2], row[3] ) 
            data_to_insert.append(data)

        batch_size = 50000
        for i in range(0, len(data_to_insert), batch_size):
            batch = data_to_insert[i:i + batch_size]
            # 批量插入
            cursor2.executemany(insert_data_sql, batch)
            connection2.commit()  # 提交事务


        end_time = time.time()  # 记录结束时间
        execution_time = end_time - start_time  # 计算执行时间
        print(f"Function execution took {execution_time} seconds")

except pymysql.Error as e:
    print(f'错误:,{e}')

完整测试代码获取:

(1)登录-注册:http://resources.kittytiger.cn/

(2)搜索:国产数据库oceanBbase,达梦,金仓与mysql数据库的性能对比

相关推荐
李可以量化19 分钟前
量化之MiniQMT 实战:一键读取通达信自选股并实时监控涨跌幅(附完整可运行代码)
开发语言·python·量化·qmt·ptrade
CTA量化套保34 分钟前
一个账户跑多个期货策略:仓位与报单隔离思路
python·区块链
机汇五金_35 分钟前
影响交换机箱体使用寿命的几个关键因素
运维·服务器·网络·python
子午36 分钟前
基于DeepSeek的酒店客房管理系统~Python+DeepSeek智能问答+Vue3+Web网站系统
开发语言·前端·python
编程大师哥41 分钟前
最高效的 IO 并发方案
linux·网络·python
Hello:CodeWorld43 分钟前
Dify 从入门到实战:部署、模型对接与企业级 AI 应用开发全教程
人工智能·python·架构·ai编程
本地化文档1 小时前
black-docs-l10n
python·github·gitcode·sphinx
Dream_ksw1 小时前
Python 基础
开发语言·python
清水白石0081 小时前
从打印对象到高质量调试:彻底理解 Python 中 `__repr__` 和 `__str__` 的区别
开发语言·python
Sammyyyyy2 小时前
Google I/O 2026 Antigravity 更新解析与 SDK 实战指南
python·ai编程·servbay