注册

dmpython 引用变量问题。

huishun 2023/03/23 763 3 已解决

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:dm8
【操作系统】:麒麟OS
【CPU】:
【问题描述】*:1.正常情况下,不引用变量:
脚本如下:
import dmPython

conn=dmPython.connect(user=‘SYSDBA’,password=‘SYSDBA’,server= ‘10.241.1.1’,port=5244)

cursor = conn.cursor()

cursor.execute(’’‘alter session set events ‘immediate trace name plndump level 140310803418016, dump_file ‘’/tmp/sqlplntest.log’’’’’’)

cursor.close()

可以执行成功。

2.我想在想把140310803418016 这个cache_item 作为变量输入,然后传参给sql 执行,但是总是执行失败
报错如下:
cursor.execute(’’‘alter session set events ‘immediate trace name plndump level (?), dump_file ‘’/tmp/sqlplntest.log’’’’’’, int(sql_id))
dmPython.DatabaseError: [CODE:-2008]��1 �и������ִ���:
TRACE�¼����ô���

脚本如下:
import dmPython

conn=dmPython.connect(user=‘SYSDBA’,password=‘SYSDBA’,server= ‘10.241.1.1’,port=5244)
sql_id = raw_input(“choose a sql_id:”)
cursor = conn.cursor()

cursor.execute(’’‘alter session set events ‘immediate trace name plndump level (?), dump_file ‘’/tmp/sqlplntest.log’’’’’’, int(sql_id))

cursor.close()

请问我应该怎么做,才能把变量作为参数传到语句里。

回答 0
暂无回答
扫一扫
联系客服