2012-05-24 3 views
3

파이썬 스크립트를 사용하여 MySQL db int 필드에 NULL 값을 삽입하려고합니다. NOT NULL 필드에서 해제되어 있으므로 아닙니다. 내가 수동으로 데이터베이스에 NULL 값을 삽입하고 괜찮 았는데 내 코드는 내가 대신 자리에 리터럴 값을 넣어 잘 작동합니다.파이썬 MySQL 삽입 NULL (없음) 값 오류

나는이 작업을 수행하는 방법에 대한 몇 가지 사례를 보았으며 구문에서 잘못된 것은 없음을 알 수 있습니다.

코드 :

length2 = None 

cursor.execute("INSERT INTO tableName(Length) VALUES(%s)", length2) 

오류 :

Error 1064: You have an error in your SQL syntax; check the manual that 
corresponds to your MySQL server version for the right syntax to use near 
'%s)' at line 1 

어떤 아이디어가?

+0

:
은 당신의 코드를 변경하십시오. –

+2

'execute()'의 두 번째 인수는 튜플 (또는리스트)이어야합니다. 'cursor.execute (INSERT INTO tableName (Length) VALUES (% s) ', (length2,))'로 변경하고 다시보고하십시오. – bernie

+0

감사합니다. 첫 번째 항목을 따라 목록을 만들려면 – user1415944

답변

4

execute()의 두 번째 인수는 튜플 (또는 목록)이어야합니다. 당신을 "NULL"오히려 없음보다 길이 2를 초기화해야

cursor.execute("INSERT INTO tableName (Length) VALUES (%s);", (length2,))