여기 내 sqlite가 데이터베이스에서 정보를 업데이트하는 데 사용하는 코드입니다 :구문 오류가 없더라도 Sqlite 구문 오류가 발생합니다. 도움?
self.c.execute("UPDATE proxydata (proxy, description) VALUES ('" + proxy + "', '" + description + "') WHERE proxy='" + proxy + "'")
을하지만이 오류 얻을 : 나는 오류를 찾을 수없는 광산의 수명을
sqlite3.OperationalError: near "(": syntax error
합니다. 실행시 두 변수 모두 올바르게 형식화 된 문자열입니다.
편집 :이 제대로 작동
:
self.c.execute("UPDATE proxydata SET description='" + description + "' WHERE proxy='" + proxy + "'")
당신은 스레드를 닫을 수 있습니다. 당신이 인수를 직접 인용해야하고, 따라서하지 않기 때문에
sql='UPDATE proxydata SET description = ? WHERE proxy = ?'
args=[decription,proxy]
self.c.execute(sql,args)
이것은 분명히 쉽게 적은 오류가 발생하기 쉬운 :
실행하고 값의 덤프를 전달하기 전에 SQL 문자열을 구축합니다. 그런 다음 실제 가치를 확인하고 여전히 괜찮은지 확인하십시오. 그렇다면 생성 된 SQL을 표시하십시오. – Achim