SQL 쿼리를 여러 개 포함하는 .sql 파일이 있습니다. 나는이 쿼리를 파이썬을 통해 MySQLdb
을 사용하여 MySQL에서 실행하려고한다.Python에서 MySQLdb를 사용하여 .sql 파일을 실행하십시오.
sqlite3
has "a nonstandard shortcut" for this purpose called executescript()
이지만, MySQLdb
에는 동등한 기능이없는 것으로 보입니다.
같은 것을 묻는 this old question from 2 years ago이 눈치 챘지만 답변이 만족스럽지 않습니다. 답은 기본적으로 다음과 같습니다
사용
subprocess
는mysql
명령을 실행하고 당신의 .SQL 파일을 보낼 수 있습니다.
이 방법이 효과적이지만 오류 처리 등으로 인해 원치 않는 복잡성이 발생합니다.
각 쿼리가 한 줄에 있으면 각 줄을 개별적으로 실행하십시오.
제 경우에는 여러 줄에 걸쳐 있기 때문에 작동하지 않습니다.
각 쿼리가 한 줄에 없으면 어떻게 든 가입하십시오.
그러나 어떻게? 제 말은, 제가 쉽게 쉽게 뭔가를 해킹 할 수 있기 때문에 여기서 반쯤 구식으로 대답 할 필요가 없으며, 아마도 그것이 제가 끝내게 될 것입니다. 그러나 이미 이것을 수행하는 확립 된 라이브러리가 있습니까? 나는 해킹보다는 포괄적이고 정확한 해결책으로 더 편하게 느낄 것입니다.
:이에 대한 지원이 활성화 및/또는 지원을 비활성화되어 절대적으로 확인하려면
는, 다음과 같이 사용할 수 있습니다 파일을 작성하고 쿼리를 작성했지만 그것이 "hack"에 의한 것이므로 삭제했다고 생각합니다. – acattle