programing

python의 경우 오류 괄호 ''' 근처에 있는 MariaDB SQL 구문

shortcode 2022. 9. 13. 22:28
반응형

python의 경우 오류 괄호 ''' 근처에 있는 MariaDB SQL 구문

python 스크립트를 사용하여 데이터를 MariaDB에 삽입하려고 합니다.콘솔에서 다음 작업을 수행하면 완벽하게 작동합니다.

INSERT INTO `Failure` (`faillure_id`, `testrun_id`, `failed_at`, `log_path`, `node`) 
         VALUES   (2, 1, 'STEP8:RUN:RC=1', '/var/fail_logs','NodeA')

쿼리 OK가 표시됩니다.또한 테이블이 입력되어 있는 것을 알 수 있습니다.거기에는 아무 문제 없어요.

그러나 python을 사용하여 동일한 SQL 쿼리를 실행하면 오류가 발생합니다.여기 제 코드가 있습니다.

conn = MySQLdb.connect("localhost","user","","DB")
cursor = conn.cursor()

cursor.execute("""INSERT INTO `Failure` (`testrun_id`, `failed_at`, `log_path`, `node`) VALUES (%s, %s, %s, %s)""",(testrun_id, failed_at, log_path, node))
conn.commit()

이로 인해 다음과 같은 오류가 발생합니다.

사용하시는 MariaDB 서버 버전에 대응하는 메뉴얼을 참조해 주세요).

오류가 어디서 발생하는지 누가 좀 알려주시겠어요?

회피책으로 다음과 같이 쿼리 문자열을 작성합니다.

sql_query = "INSERT INTO `Failure` (`testrun_id`, `failed_at`, `log_path`, `node`) VALUES " + "( '" + str(testrun_id) + "', '" + str(failed_at) + "', '"+ log_path + "', '" + node + "')"
cursor.execute(sql_query)

효율적이지는 않지만 지금은 그 일을 한다.

언급URL : https://stackoverflow.com/questions/39579996/mariadb-sql-syntax-near-error-parenthesis-for-python

반응형