Skip to main content

A Collection of assorted Teradata Tools

Project description

PyPi License Python3.4+

tdtools is a collection of tools and utilities that I developed for my personal use. I am making these tools open-source in the hope that someone else might find them useful.

NOTE: These tools are not endorsed by Teradata Inc.

Requirements

Theses tools are tested with Python 3.4 and Python 3.5. Python 2.7 version isn’t part of the testing and most likely will not work. However, if there is a strong interest in using Python 2.7 and changes required to support Python 2.7 are minimal, I may consider making selected modules support Python 2.7.

There is a dependency on teradata python package. It’ll be downloaded automatically if you use standard python installer pip.

Installation

Use Python’s standard pip utility to install tdtools. tdtools can be install in an virtualenv.

$ pip install tdtools

Or

C:\>python -m pip install tdtools

Configuration

No configuration is required except setting up the needed ODBC connections. All scripts that are part of tdtools accept arbitrary ODBC connection strings using --tdconn parameter.

If more flexibility is needed, for example, to use Teradata REST APIs, it may be done by providing sqlcsr_site.py in your PYTHONPATH. Have a look at sqlcsr.py module to get an idea about what can be overriden in sqlcsr_site.py.

Tools

All tools are command-line utilities that are automatically installed when tdtools is installed using pip. What follows is a brief description of each tool. Each tool support --help or -h command-line option that shows detailed description of options supported.

Command

Purpose

dbtree

Prints Teradata database hierarchy.

vwtree

Prints (or save) view hierarchy.

tptload

Generate (and optionally run on Linux) TPT load script.

All show* utilities generate DDLs for different types of Teradata objects.

Command

Objects

showdb

Database or user

showgrant

Grants to user/role

showprof

Profile

showrole

Role

showtvm

Wrapper for Teradata SHOW <object> command

showzone

Zone

All ls* utilities print Teradata object information from DBC tables. Currently supported commands are:

Command

Objects

lstb

Tables

lsvw

Views

lsmc

Macros

lspr

Stored Procedures

lsfn

Functions

lsji

Join Indexes

Known Issues

  1. When using teradata.tdrest as method for database connection, certain show* commands will not work correctly. This is due to an upstream defect. Note that this error does not occur when using teradata.tdodbc, the default method for database connection.

  2. SQL command show in xml view doesn’t always return referenced object list. When this happens, vwtree will print an error and not display view hierarchy.

Support

If you encounter an issue, report it using issue tracker. I’ll try to provide a fix as soon as I can. If you already have a fix, send me a pull request.

Contributions

Feel free to fork this repository and enhance it in a way you see fit. If you think your changes will benefit more people, send me a pull request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tdtools-0.4.2.tar.gz (27.9 kB view hashes)

Uploaded Source

Built Distribution

tdtools-0.4.2-py3-none-any.whl (43.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page