使用 Python 连接到 Teradata 的问题
Issue Connecting to Teradata using Python
我需要使用 python 连接到 Teradata 数据库。我使用了以下代码:
import pyodbc
import teradata
cnxn = pyodbc.connect('DRIVER={Teradata};SERVER=<*ServerName*>;DATABASE=<*Database Name*>;UID=<*User ID*>;PWD=<*Password*>',ansi=True, autocommit=True)
cur = cnxn.cursor()
但是在执行时,我收到如下错误:
Error: ('28000', '[28000] [Teradata][ODBC Teradata Driver] Not enough
information to log on (0) (SQLDriverConnect); [28000] [Teradata][ODBC
Teradata Driver] Not enough information to log on (0)')
我在这里缺少什么?还需要包括什么来建立连接?
另外,请问有没有其他方法可以建立连接。在寻找时,我遇到了 teradata.UdaExec()。这个也可以用吗?
以下在 CentOS Linux 服务器中工作。
在任何文件中创建一个包含以下内容的文件(比如 odbc.ini)
[ODBC Data Sources]
my_data_source=tdata.so
[my_data_source]
Driver=/path/to/teradata/drivers/tdata.so
DBCName=<td_hostname>
LastUser=<user_name>
Username=<user_name>
Password=<password>
Database=<default_database>
DefaultDatabase=<default_database>
TDMSTPortNumber=<teradata_port>
将 ODBCINI 变量设置为 odbc 文件的路径
export ODBCINI=/file/to/path/of/odbc.ini
注意:您可以通过在主目录中创建 odbc.ini 文件来跳过 ODBCINI 环境变量的设置,即 /home/user/.odbc.ini(注意 .odbc.ini是一个隐藏文件,文件名中有点前缀)
现在使用以下代码段连接到 Teradata。
import pyodbc
pyodbc.pooling = False
conn = pyodbc.connect('DSN=my_data_source',ansi=True, autocommit=True)
我需要使用 python 连接到 Teradata 数据库。我使用了以下代码:
import pyodbc
import teradata
cnxn = pyodbc.connect('DRIVER={Teradata};SERVER=<*ServerName*>;DATABASE=<*Database Name*>;UID=<*User ID*>;PWD=<*Password*>',ansi=True, autocommit=True)
cur = cnxn.cursor()
但是在执行时,我收到如下错误:
Error: ('28000', '[28000] [Teradata][ODBC Teradata Driver] Not enough information to log on (0) (SQLDriverConnect); [28000] [Teradata][ODBC Teradata Driver] Not enough information to log on (0)')
我在这里缺少什么?还需要包括什么来建立连接?
另外,请问有没有其他方法可以建立连接。在寻找时,我遇到了 teradata.UdaExec()。这个也可以用吗?
以下在 CentOS Linux 服务器中工作。
在任何文件中创建一个包含以下内容的文件(比如 odbc.ini)
[ODBC Data Sources]
my_data_source=tdata.so
[my_data_source]
Driver=/path/to/teradata/drivers/tdata.so
DBCName=<td_hostname>
LastUser=<user_name>
Username=<user_name>
Password=<password>
Database=<default_database>
DefaultDatabase=<default_database>
TDMSTPortNumber=<teradata_port>
将 ODBCINI 变量设置为 odbc 文件的路径
export ODBCINI=/file/to/path/of/odbc.ini
注意:您可以通过在主目录中创建 odbc.ini 文件来跳过 ODBCINI 环境变量的设置,即 /home/user/.odbc.ini(注意 .odbc.ini是一个隐藏文件,文件名中有点前缀)
现在使用以下代码段连接到 Teradata。
import pyodbc
pyodbc.pooling = False
conn = pyodbc.connect('DSN=my_data_source',ansi=True, autocommit=True)