내가 pyodbc를 통해이 개 MySQL의 연결이 선언 한대로 : 나는 CSV를 만들pyodbc.Error : ('HY000은', '드라이버는 오류를 제공하지 않았다!')
connMy1 = pyodbc.connect('DRIVER={MySQL ODBC 5.3 Unicode Driver};SERVER=***;UID=***;PWD=***')
connMy1.autocommit = True
cursorMy1 = connMy1.cursor()
connMy2 = pyodbc.connect('DRIVER={MySQL ODBC 5.3 Unicode Driver};SERVER=***;UID=***;PWD=***')
connMy2.autocommit = True
cursorMy2 = connMy2.cursor()
팬더 같은 연결을 caling로 이것은 :
는def bajar(sql,tabla,ruta):
print ("bajando datos")
chunk = 10 ** 5
chunks = pandas.read_sql(sql, connMy1, chunksize=chunk)
eliminarArchivo(ruta)
print ("creando CSV")
with open(ruta, 'w') as output:
for n, df in enumerate(chunks):
write_header = n == 0
df.to_csv(output, sep=';', index=False, header=False, na_rep='NULL')
connMy1.commit()
그럼 내가 미리으로 (제 1 번째 함수를 호출하는 경우, CSV
def subir(ruta,tabla):
print ("Subiendo datos")
sqlMy2 = "load data local infile '"+ruta+"' into table "+tabla+" fields terminated by ';' lines terminated by '\r\n';"
print (sqlMy2)
cursorMy2.execute(sqlMy2)
connMy2.commit()
업로드이 함수를 호출 pyodbc.Error : ('HY000', '드라이버가 오류를 제공하지 못했습니다!')
모두 가져 오기 기능을 사용하면 첫 번째 기능을 호출하면 데이터를 완벽하게 업로드합니다. 임이 잘못한 것의 암시? 감사합니다.
두 번째 해결 방법을 찾으러 갔다. 사용하려고하는 모든 함수에 대해 conection을 선언하는 하나의 파일을 사용하고 있었고 CSV를 작성하는 함수 만 호출 할 때 다른 함수를 호출하면 구입시 오류가 발생했다. 업로드 ii. 당신의 솔루션은 훌륭하게 작동했습니다! 고맙습니다. – Alejandro
문제 없습니다. 도와 줄 수있어서 기뻐. –
이 답변은 절대적으로 도움이되지만,'pyodbc'보다는 MySQL 드라이버를 사용하는 방법을 고려할 수도 있습니다. – FlipperPA