2017-03-04 6 views
0

J'essaie de me connecter au serveur teradata et de charger une base de données dans une table en utilisant python. Voici mon code -Connexion à Teradata en utilisant Python

import sqlalchemy 

engine = sqlalchemy.create_engine("teradata://username:[email protected]:port/") 

f3.to_sql(con=engine, name='sample', if_exists='replace', schema = 'schema_name') 

Mais je reçois l'erreur suivante -

InterfaceError: (teradata.api.InterfaceError) ('DRIVER_NOT_FOUND', "No driver found for 'Teradata'. Available drivers: SQL Server,SQL Server Native Client 11.0,ODBC Driver 13 for SQL Server") 

Quelqu'un peut-il me aider à comprendre ce qui est erroné dans ma démarche?

+0

Découvrez https://developer.teradata.com/tools/articles/teradata-sqlalchemy-introduction –

Répondre

0

Je ne sais pas pourquoi vous utilisez sqlalchemy. Mais vous pouvez explorer en utilisant le module Teradata pour se connecter à Teradata comme expliqué dans l'autre lien: Connecting Python with Teradata using Teradata module

+1

Je voulais utiliser la fonction 'to_sql' des pandas géants de dataframe. D'où j'ai utilisé sqlalchemy. Le problème était sur l'index de la trame de données. Le problème est maintenant résolu lorsque j'utilise le code suivant; f3.to_sql (con = moteur, nom = 'échantillon', if_exists = 'remplacer', schéma = 'nom_schéma', index = faux) –

0

Pour vous connecter à une base de données Teradata, vous devez pyodbc, j'ai aussi des problèmes avec le dialecte teradata.

Exemple:

import pyodbc 

user = 'user' 

pasw = 'pass' 

host = 'host' 

connection = pyodbc.connect('DRIVER=Teradata;DBCNAME=' + host +';UID=' + user + ';PWD=' + pasw +';QUIETMODE=YES', autocommit=True,unicode_results=True)