当前在python中通过pyodbc运行sql代码时遇到问题。odbc连接到netezza以运行sql代码。
db = pyodbc.connect(connection_string)
cursor = db.cursor()
sql = '''
Create external table TABLE1 (
col1,
col2,
col3
)
using (
dataobject('C:\\file.txt')
delimiter '|'
quotedvalue 'DOUBLE'
requiresquotes TRUE
nullvalue ''
escapechar '`'
y2base 2000
encoding 'internal'
remotesource 'ODBC'
logdir 'C:\\log'
);
Create table TABLE1_MAILBOX as (
select * from TABLE1
) distribute on random;
'''
cursor.execute(sql)
db.commit()
创建外部表的第一块代码工作正常,当创建table1\u邮箱的第二块代码出错时。它似乎遗漏了表1中的行。例如,如果dataobject文本文件有5000行,那么table1有5000行,但是table1\u mailbox有大约4750行。
但是,如果我直接在netezza中运行这段代码,它就可以正常工作,并且每个表都有正确的行数。
如果它是通过python中的pyodbc运行的,则不确定为什么要执行through。可能是故障吗?还是我做错了什么?
暂无答案!
目前还没有任何答案,快来回答吧!