dmPython

2023-05-16

dmPython

达梦为适配 python 开发出 dmPython 接口,在使用时还需要需要配置 DPI 运行环境。

1 连接方式

dmPython提供两种连接方式,不仅支持 key=value 形式传参连接,也支持连接串方式连接。连接属性主要有:user, password, dsn, hostlserver, port, schema,autocommit等等

1、conn = dmPython.connect(user='SYSDBA', password='wh17xktk!!', server='localhost',port=5236,schema='SYSDBA')

2、dmPython .connect('SYSDBA/SYSDBA@localhost:5236/SYSDBA’)

2接口

2.1 Connection对象接口

Connection.cursor():构造一个当前连接上的cursor对象,用于执行操作操作数据库的命令。
Connection.commit():手动提交当前事务。如果设置了非自动提交模式,可以调用该方法手动提交。
Connection.rollback():手动回滚当前未提交的事务。
Connection.close():关闭与数据库的连接。

Connection.explan(sqI):返回指定SQL语句的执行计划。

2.2 Cursor接口

Cursor.callproc(procname,*args):调用存储过程,返回执行后的所有输入输出参数序列。

Cursor.calIfunc(funcname,*args):调用存储函数,返回存储函数执行的返回值以及所有参数值。返回序列中第一个元素为函数返回值,后面的是函数的参数值。如果存储函数带参数,则必须为每个参数键入一个值包括输出参数。
Cursor.prepare(sql):准备给定的sql语句。后续可以不指定SQL,直接调用execute。

Cursor.execute(sql【,parameters]}【,kwargsParams]):执行给定的SQL语句,给出的参数值和 SQL 语句中的绑定参数从左到右一一对应参数缺少则补None,多的则自动忽略。支持按位置动态绑定,按名称动态绑定,按位置绑定数组,按名称绑定字典等。

Cursor.executedirect(sql):执行给定的S C} L语句,不支持参数绑定。
Cursor.executemany(sql,sequence of params):对给定的SQL语句进行批量绑定参数执行。参数用各行的tuple组成的序列给定。
例如:

Seq_params=【(1,'abcdefg’),(2,'uvwxyz'}]
cursor.executemany("insert into test values(?,?)”,Seq_params}

Cursor.close():关闭Cursor对象。
Cursor.next():获取结果集的下一行,返回一行的各列值,返回类型为tuple。如果没有下一行返回None。

Cursor.fetchmany(【rows=Cursor.arraysize]):获取结果集的多行数据,获取行数为rows,默认获取行数为属性Cursor.arraysize值。

cursor.fetchall():获取结果集的所有行。返回所有行数据,返回类型为由各行数据的tuple组成的list。
Cursor. nextset():获取下一个结果集。如果不存在下一个结果集则返回None,否则返回True。
可以使用fetchXXX()获取新结果集的行值。

3、PyCharm 中 Python 操作达梦数据库

3.1、安装 dmPython。

1、进入达梦数据库安装目录下的 dmPython 目录,执行命令 python setup.py install

C:\Users\pc>e:

E:\>cd \dameng\dmdbms8\drivers\python\dmPython

E:\dameng\dmdbms8\drivers\python\dmPython>python setup.py install

在这里插入图片描述

在这里插入图片描述
2、配置 DPI 环境变量
在这里插入图片描述

3.3.2 PyCharm 配置连接 dm 数据库

1、点击 View 选择Tool Windows 选择 DB Browser。
在这里插入图片描述2、配置连接名,描述信息,URL,用户名,密码,驱动。

在这里插入图片描述点击测试,测试链接是否成功,连接测试成功后点击Apply点击Ok
在这里插入图片描述
连接成功后可以看到DM数据库中的信息。
在这里插入图片描述

3.3.3 Python操作达梦数据库

# coding:utf-8
import dmPython

try:
    # 创建达梦数据库连接
    conn = dmPython.connect(user='SYSDBA', password='wh17xktk!!', server='localhost',
                            port=5236, schema='SYSDBA')
    # 创建数据库操作对象
    cursor = conn.cursor()
    try:
        # 清空表,初始化测试环境
        cursor.execute('delete from T2')
    except (dmPython.Error, Exception) as err:
        print(err)
    try:
        # 插入数据
        cursor.execute("insert into T2 values(1, 'xswl'), (2, 'xswl'), (3, 'xswl'), (4, 'xswl')")
        print('python: insert success!')
        # 删除数据
        cursor.execute("delete from T2 where id=1")
        print('python: delete success!')

        # 更新数据
        cursor.execute("update T2 set name = 'xktk' where id = 2 or id = 4")
        print('python: update success!')

        # 查询数据
        cursor.execute("select name from T2")
        res = cursor.fetchall()
        for tmp in res:
            for c1 in tmp:
                print c1

        print('python: select success!')
    except (dmPython.Error, Exception) as err1:
        print (err1)
    conn.close()
except (dmPython.Error, Exception) as err:
    print(err)

在这里插入图片描述
在这里插入图片描述
如果还有任何问题,欢迎到达梦在线服务平台提问!
社区 | 达梦在线服务平台https://eco.dameng.com

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

dmPython 的相关文章

随机推荐

  • Source Insight快捷键

    常用使用技巧 按住 34 ctrl 34 再用鼠标指向某个变量 或函数 xff0c 点击一下 xff0c 就能进入这个变量 xff08 或函数 xff09 的定义 快捷键 34 Alt 43 F12 34 xff0c 可以让显示界面中的每个
  • 3年测试越来越迷茫... 技术跟不上接下来是不是要被淘汰了?

    这两天和朋友聊到了软件测试的发展 xff1a 这一行的变化确实蛮大 xff0c 从开始最基础的功能测试 xff0c 到现在自动化 性能 安全乃至于以后可能出现的大数据测试 AI测试岗位需求逐渐增多 我也在软件测试这行摸爬滚打有些日子了 xf
  • 金三银四,自动化测试面试题精选【拼多多二面】

    面试一般分为技术面和hr面 xff0c 形式的话很少有群面 xff0c 少部分企业可能会有一个交叉面 xff0c 不过总的来说 xff0c 技术面基本就是考察你的专业技术水平的 xff0c hr面的话主要是看这个人的综合素质以及家庭情况符不
  • 6个练手的软件测试实战项目(附全套视频跟源码)偷偷卷死他们!

    项目一 xff1a 12306抢票项目 项目测试目的 学会Selenium定位web元素的方法 熟练浏览器调试工具使用 项目主体步骤 1 xff09 人工走一遍流程 xff0c 对自动化的流程心中有数 2 xff09 按步骤拆分 xff0c
  • 这份软件测试中的 43 个功能测试点,看看你会吗?

    功能测试就是对产品的各功能进行 验证 xff0c 根据功能测试 用例 xff0c 逐项测试 xff0c 检查产品是否达到用户要求的功能 针对 web 系统的常用测试方法如下 xff1a 1 页面链接检查 xff1a 每一个链接是否都有对应的
  • 还在发愁项目去哪找?软件测试企业级Web自动化测试实战项目

    今天给大家分享一个简单易操作的实战项目 xff08 已开源 xff09 项目名称 ET开源商场系统 项目描述 ETshop是一个电子商务B2C电商平台系统 xff0c 功能强大 xff0c 安全便捷 适合企业及个人快速构建个性化网上商城 包
  • 【面经】2023年软件测试面试题大全(持续更新)附答案

    面试的准备跟笔试的准备是不一样的 xff0c 笔试的准备的话 xff0c 可以去刷题 xff0c 面试的话 xff0c 专业的面试官一般首先都会根据你简历上写的内容去提问 xff0c 都问完之后 xff0c 最后可能再会问一下简历之外的 x
  • 今天面了一个来阿里要求月薪23K,明显感觉他背了很多面试题...

    最近有朋友去阿里面试 xff0c 面试前后进行了20天左右 xff0c 包含4轮电话面试 1轮笔试 1轮主管视频面试 1轮hr视频面试 据他所说 xff0c 80 的人都会栽在第一轮面试 xff0c 要不是他面试前做足准备 xff0c 估计
  • svn: E230001: Server SSL certificate verification failed:certificate issued for a different hostname

    svn E230001 Server SSL certificate verification failed certificate issued for a different hostname issuer is nottrusted
  • linux系统中的用户管理

    linux系统中的用户管理 1 用户及用户组存在的意义1 1用户存在的意义1 2用户组存在意义2 用户及用户组在系统中的存在方式3 用户切换3 1用户查看3 2用户切换4 用户涉及到的系统配置文件5 用户和用户组建立及删除6 用户和用户组的
  • ddns的搭建(动态域名解析DDNS)

    ddns的搭建 服务主机客户端dhcp分配ip失败 动态域名解析 xff08 Dynamic DNS xff0c 简称DDNS xff09 是把互联网域 服务原理 服务原理 名指向可变IP地址的系统 DNS只是提供了域名和IP地址之间的静态
  • 谷歌浏览器去除广告--广告终结者

    每次使用谷歌浏览器查阅一些资料的时候 xff0c 总是会弹出一大堆广告窗口 xff0c 影响阅读体验 现在找到一种方法可以屏蔽网页上浮动的 xff0c 弹框的 xff0c 渐变的广告 1 下载离线插件安装包 Advertising Term
  • DM数据库Linux服务器启动图形化工具

    背景 DM数据库客户端工具位于 DM 安装目录的 tool 目录下 在Linux系统中使用这些客户端工具需要开启图形化功能 xff0c 本文介绍开启Linux图形化的操作步骤 开启图形化 root用户允许其他用户连接 xff0c 执行 sp
  • MySQL基础概述

    1 MySQL列类型 xff1a 带符号 无符号整数 xff0c 1 2 3 4 8字节长 xff0c FLOAT xff0c DOUBLE xff0c CHAR xff0c VARCHAR xff0c TEXT xff0c BLOB xf
  • Ubuntu11.04无线网络已禁用或设备未就绪

    以前在Win7下安装Ubuntu的时候 xff0c Ubuntu能够正常的连接到无线网 xff0c 但是在新买的笔记本上安装完Ubuntu11 04后 xff0c 出现了无线网络已经禁用的情况 xff0c 起初我以为是无线网络开关未开启 x
  • 第11章 远程联机服务器SSH/XDMCP/VNC/RDP

    1 用例 远程联机服务器 xff0c 提供用户远程透过文字或图形接口登入系统 2 静态 2 1 sshd 该服务提供远程联机 xff0c 并且数据加密 查看是否启动命令 service sshd start 设置系统启动是开启sshd服务命
  • ubuntu下找不到openssl/ssl.h

    编译代码 xff0c 总提示找不到openssl ssl h文件 xff0c 怀疑没有安装ssl 于是 sudo apt get install openssl 之后再编译 xff0c 还是提示同样的问题 于是查找 usr local in
  • 基于Docker的RStudio-server构建

    docker rstudio server Dockerfile for RStudio Server Docker image Pull the image from Docker Hub span class token functio
  • 回收站的路径 (CentOS6、Fedora10)

    刚开始装Linux系统的时候在root用户下向其他用户拷贝过一些文件 xff0c 后面就删除了 但在普通用户下 xff0c 没有删除的权限 xff0c 想修改权限后删除又找不到回收站的路径 xff08 刚开始还不知道搜索回收站的路径 xff
  • dmPython

    dmPython 达梦为适配 python 开发出 dmPython 接口 xff0c 在使用时还需要需要配置 DPI 运行环境 1 连接方式 dmPython提供两种连接方式 xff0c 不仅支持 key 61 value 形式传参连接