为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】: 8.1.1
【操作系统】:UOS 20
【CPU】: aarch64
【Python版本】: 3.8.11
【问题描述】*:
我使用dmpython连接达梦数据库, 对有精度的number类型值查询,获取出的变量类型不是int或float,变成了str类型
dmpython文档: https://eco.dameng.com/docs/zh-cn/app-dev/python-python.html
dmpython源码: https://eco.dameng.com/download/
建表语句:
CREATE TABLE “DREAM”.“sky1”
(
“id” NUMBER(18,2)) STORAGE(ON “MAIN”, CLUSTERBTR) ;
CREATE TABLE “DREAM”.“sky2”
(
“id” NUMBER) STORAGE(ON “MAIN”, CLUSTERBTR) ;
代码:
import dmPython
try:
conn = dmPython.connect(user=‘‘, password=’’, server=‘*****’, port=5236)
cursor = conn.cursor()
cursor.execute(“select id from sky1”)
res = cursor.fetchone()
print(f"{res=}")
for tmp in res:
for c1 in tmp:
print(c1, type(c1))
print(‘python: conn success!’)
conn.close()
except (dmPython.Error, Exception) as err:
print(err)
表sky2的结果为str,表sky1的结果为float 这是什么问题?
遇到了相同的问题,求解答