반응형
(DRIVER_NOT_Found', "'Teradata'용 드라이버를 찾을 수 없습니다. 사용 가능한 드라이버:) - 테라데이터 모듈이 있는 아나콘다-주피터 노트북 사용
와 함께 사용해 왔습니다. 목적은 아나콘다-주피터 노트북 파이썬과 테라데이터 DB를 연결하기 위한 연결 문자열을 만드는 것이었다. 를 설치한 후 오류가 발생했습니다.
데이터와 함께 teradata DB에서 테이블을 가져오려면 이 연결 문자열이 필요합니다. 이미 ODBC 드라이버를 설치하고 ODBC.ini 파일을 생성했습니다. 하지만 여전히 이 드라이버를 찾을 수 없음 오류 주피터 노트북을 받고 있습니다. 제발, 나 좀 도와줘. 아래는 제가 연결 문자열을 만드는 데 사용하는 스크립트입니다.
시스템, 호스트, dsn, 사용자 이름, 비밀번호, 그리고 테라데이터 데이터베이스의 드라이버 이름을 알려주세요. 다음 스크립트에서 언급해야 합니다:
udaExec.connect(method="odbc",system=host, username=username,
password=password, driver="DRIVERNAME")
PS: 아나콘다-주피터 노트북 서버가 유닉스에서 실행되고 있다.
스크립트:
#Using teradata module
#You can install teradata via PIP: pip install teradata
#to get a list of your odbc drivers names, you could do: teradata.tdodbc.drivers
import teradata
import pandas as pd
host,username,password = 'HOST','UID', 'PWD'
#Make a connection
udaExec = teradata.UdaExec (appName="test", version="1.0", logConsole=False)
with udaExec.connect(method="odbc",system=host, username=username,
password=password, driver="DRIVERNAME") as connect:
query = "SELECT * FROM DATABASEX.TABLENAMEX;"
#Reading query to df
df = pd.read_sql(query,connect)
# do something with df,e.g.
print(df.head()) #to see the first 5 rows
감사합니다!
ODBC 홈에 대한 드라이버() 및 내보내기 경로를 설치해야 합니다. [ ]
또는 python pip 패키지를 직접 사용하여 sql 쿼리를 커서로 실행(즉, mysql-python) [ ]
이것은 나에게 문제를 해결해 주었다:
from sqlalchemy import create_engine
import sqlalchemy_teradata
def connect_td_engine():
user='YOUR_USER'
pasw="YOUR_PASSWORD'
host = 'YOUR_HOST.COM'
engine = create_engine(f'teradatasql://{host}/?user={user}&password={pasw}')
return engine
sqlalchemy_teradata를 가져오기만 하면 문제가 해결되고 더 이상 드라이버가 필요하지 않습니다.
반응형
'개발하자' 카테고리의 다른 글
다차원 범위에 대한 범위(n)에 해당하는 파이썬이 있나요? (0) | 2023.06.30 |
---|---|
Terraform은 계획을 수행할 때 'Error: Variables not allowed'를 출력합니다 (0) | 2023.06.30 |
파이썬에서 한 줄에 여러 개의 'with' 문이 중첩된 'with' 문과 같은가요? (0) | 2023.06.28 |
Python을 사용하여 Outlook 이메일을 역순으로 검토하는 방법 (0) | 2023.06.28 |
쿠베르네테스의 HPA와 ReplicaSet는 어떤 관계인가요? (0) | 2023.06.27 |