在Python中,有不同的方法可以连接到Teradata。下表并非详尽无遗。

sql炼金术from sqlalchemy import create_engine

from sqlalchemy.ext.declarative import declarative_base, DeferredReflection

from sqlalchemy.orm import scoped_session, sessionmaker

[...]

# Connect

engine = create_engine('teradata://' + user + ':' + password + '@' + host + ':22/' + database)

db_session = scoped_session(sessionmaker(autocommit=False, autoflush=False, bind=engine))

db_session.execute('SET SESSION CHARACTERISTICS AS TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;') # To avoid locking tables when doing select on tables

db_session.commit()

Base = declarative_base(cls=DeferredReflection)

Base.query = db_session.query_property()

然后可以使用db_session进行查询。见SQLAlchemy Session API

Pyodbc

如果要使用Pyodbc,首先需要在计算机上安装Teradata驱动程序。在我的示例中,在安装Teradata驱动程序之后,/etc/odbcinst.ini中有以下条目[Teradata]

Driver=/opt/teradata/client/16.00/odbc_64/lib/tdata.so

APILevel=CORE

ConnectFunctions=YYY

DriverODBCVer=3.51

SQLLevel=1

然后我可以连接以下内容:import pyodbc

[...]

#Teradata Connection

connection= pyodbc.connect("driver={Teradata};dbcname=" + host + ";uid=" + user + ";pwd=" + pwd + ";charset=utf8;", autocommit=True)

connection.setdecoding(pyodbc.SQL_CHAR, encoding='utf-8')

connection.setdecoding(pyodbc.SQL_WCHAR, encoding='utf-8')

connection.setdecoding(pyodbc.SQL_WMETADATA, encoding='utf-8')

connection.setencoding(encoding='utf-8')

cursor= n.cursor()

cursor.execute("Select 'Hello World'")

for row in cursor:

print (row)

python teradata_使用Python连接Teradata相关推荐

  1. python处理teradata数据库_【Python连接数据库】Python连接Teradata数据库-ODBC方式(pyodbc包和teradata包)...

    1.安装Python (1)前置安装包查看 rpm -qa |grep -i zlib rpm-qa |grep -i bzip2rpm-qa |grep -i ncurses rpm-qa |gre ...

  2. Python局域网socket无法连接的问题解决

    Python局域网socket无法连接的问题解决 服务器端的socket监听的是否是服务器的IP地址(并不是什么'localhost'或者'127.0.0.1'这种).即客户端需要连接的IP地址填入即 ...

  3. python mysql数据库长连接_python 长连接 mysql数据库

    python 长连接数据库 python链接mysql中没有长链接的概念,但我们可以利用mysql的ping机制,来实现长链接功能 思路: 1 python mysql 的cping 函数会校验链接的 ...

  4. [转]python 中的字符串连接

    python 中可使用 + 进行字符串的连接操作 但很多文档里都说,python 使用 + 进行字符串连接的效率低下 这直接导致本人在代码中不敢使用 + 进行字符串的连接操作 可事实又是怎样呢? 之所 ...

  5. python数据框的横向贾总_[Spark][Python]DataFrame的左右连接例子

    [Spark][Python]DataFrame的左右连接例子 $ hdfs dfs -cat people.json {"name":"Alice",&quo ...

  6. Python学习笔记--Python字符串连接方法总结

    声明: 这些总结的学习笔记,一部分是自己在工作学习中总结,一部分是收集网络中的知识点总结而成的,但不到原文链接.如果有侵权,请知会,多谢. python中有很多字符串连接方式,总结一下: 1)最原始的 ...

  7. python通过ssh通道连接PostgreSQL数据库(mysql等类同)

    目录 一.问题需求 二.解决办法 一.问题需求 对于有ssh通道设置的数据库连接,遇到已经有一段时间了.之前老是疑惑,使用Navicat之类的工具就可以连接数据库,但用python就是连接不到.之前写 ...

  8. python导出结果_Python连接Oracle数据查询导出结果

    python连接oracle,需用用到模块cx_oracle,可以直接pip安装,如网络不好,可下载离线后本地安装 本人由于工作需要,期望便捷查询所得结果,且固定输出某个格式 具体代码如下: #! c ...

  9. 【win10】使用Python 3.7 py2neo连接Neo4j

    目录 JDK 安装(jdk-12) JDK 下载 JDK 配置 检查安装 Neo4j安装(neo4j-community-4.2.19) Neo4j下载 Neo4j配置 检查安装 py2neo安装(2 ...

最新文章

  1. wireshark的使用教程--用实践的方式帮助我们理解TCP/IP中的各个协议是如何工作的
  2. C# 利用SharpPcap实现网络包捕获嗅探
  3. tar用法实例 tar命令
  4. linux sys伪用户作用,【原创】Linux版 对sys用户进行审计的示例
  5. 图文:详解数据库Oracle 11g的基本安装
  6. 为什么我们应该担心华尔街的人工智能
  7. Qt实现Areo效果_vortex_新浪博客
  8. 强一致性、弱一致性、最终一致性
  9. python random 之基础点名器
  10. oracle10g连接自动断开,报ORA-03135错误
  11. Web前端:一些用于Web开发的最佳精选IDE和代码编辑器
  12. [2017湖南集训7-8]暗牧 虚树+最短路
  13. Python获取Excel中超链接并下载至本地
  14. php正则中英文数字,PHP正则匹配中英文、数字及下划线方法
  15. ios开发学习中遇到问题[LayoutConstraints] Unable to simultaneously satisfy constraints.的解决方法
  16. 易语言lsp劫持_易语言网截插件修复源码
  17. python制作别人能使用的类_最近的工作,用python做一个微信的消息类的后台类的应用...
  18. 如何用R做计量经济学
  19. 【个人笔记】嵌入式多种通讯方式总结
  20. 郭光灿团队实现低温集成量子纠缠光源

热门文章

  1. ipad一代还能下软件吗_学习用于软件管理的下一代构建工具
  2. Lua string字符串相关操作
  3. 能做好上传下达吗(命令模式)
  4. 【文本检测与识别白皮书-3.1】第三节:算法模型
  5. AttributeError: ‘Embeddings‘ object has no attribute ‘d_model‘
  6. 嵌入式系统工程化设计4
  7. Downie 4 for Mac(最好用的视频下载软件)
  8. nyoj144 小珂的苦恼
  9. 求知若饥,虚心若愚Stay Hungry, Stay Foolish--2005斯坦福大学05年毕业演讲
  10. JZOJ5996. 【WC2019模拟2019.1.12】回文后缀