Connect to Teradata database through Python
Teradata published an official Python module which can be used in DevOps projects. More details can be found at the following GitHub site: https://github.com/Teradata/PyTd
Install Teradata module
If pip is installed, you can directly install this module through the following command:
pip install Teradata
If not, you can download the package in the following URL:
https://pypi.python.org/pypi/teradata
After downloading, unzip the package and then use command prompt to navigate to the directory that contains setup.py file and then run the following command to install:
python setup.py install
Sample Code
"""Test teradata driver"""
import teradata
import sys
udaExec = teradata.UdaExec(
appName="HelloWorld", version="1.0", logConsole=False)
session = udaExec.connect(method="odbc", dsn="td16vm",
username="dbc", password="dbc", autocommit=True,
transactionMode="Teradata")
for row in session.execute('select getqueryband();'):
print(row)
for row in session.execute('select top 10 tablename, tablekind from dbc.tables;'):
print(row)
session.close()
input('Type <Enter> to exit...')
Details about the sample code
When connecting to Teradata, the following parameters can be configured:
https://developer.teradata.com/tools/reference/teradata-python-module#ConnectParametrs
In the sample code, transaction mode is set as Teradata; auto commit is set as True (transactions will be committed automatically); connecting method is ODBC (the other options is REST), DSN is using td16vm which was setup using the following parameters in my computer:
Setup your own Teradata virtual machine
If you have no Teradata instance, you can setup one following this post:
Install Teradata Express 15.0.0.8 by Using VMware Player 6.0 in Windows
Sample code result
The following screenshot shows the running result in my IDE (Visual Studio Code):
Hi,
Your comment is not relevant to the content on this page. Is that a suggestion you want to make for Kontext website?
For any suggestions please post it at https://kontext.tech/forum/kontext-project
thx a lot for this tutorial. But I have a problem to ensure the connection of python (installed into windows) to Teradata (installed into VMWare in the same computer).
What shoul I do?
Hi, is your issue resolved? If not, please paste your detailed error messages here.
Hi,
Did you setup the ODBC data source successfully?
If you are encountering connection issues from your windows host to the VM, you can check my following post to ensure the connection is well established:
By default, links will appear as follows in all browsers: