mssql에 0을 입력하는데 에러가 나네요.

with connection.cursor() as cursor:
sql = 'insert into test (aaa) values (%d);'
cursor.execute(sql, 1)

with connection.cursor() as cursor:
sql = 'insert into test (aaa) values (%d);'
cursor.execute(sql, 2)

with connection.cursor() as cursor:
sql = 'insert into test (aaa) values (%d);'
cursor.execute(sql, 0)

파이썬 3.8.6 사용중입니다.
MS-SQL2016 이구요.
위처럼 실행하면 1과 2는 입력이 되는데 0은 오류가 나네요.
양수 음수 모두 입력되는데 0만 오류납니다.

물론 mssql 에서 직접 입력하면 잘 됩니다.

aaa 컬럼은 int 형식입니다.

0을 int로 인식하지 않는 걸까요?

오류메시지는 아래와 같습니다.

File "C:/PyCharm/2021-04/test.py", line 173, in
cursor.execute(sql, 0)
File "src\pymssql.pyx", line 465, in pymssql.Cursor.execute
pymssql.ProgrammingError: (102, b"Incorrect syntax near 'd'.DB-Lib error message 20018, severity 15:\nGeneral SQL Server error: Check messages from the SQL Server\n")

조광훈 637

M 2021년 4월 25일 5:56 오후

목록으로