2015-01-14 2 views
6

pyodbc 드라이버를 사용하여 SQL을 사용하여 Microsoft Access 테이블에 연결하고 있습니다. 아무도 내가이 테이블 내에서 필드를 대체에 대해 어떻게 알 수 있습니까 ?? 행을 삭제 한 다음 행을 다시 넣는 방법에 대해서는 알았지 만 액세스 할 때 자동 번호로 인해 기본 키가 변경됩니다.SQL Update 문, pyodbc 사용

나는 진행 테이블에 삽입이 있습니다

 cnxn = pyodbc.connect('Driver={Microsoft Access Driver (*.mdb, *.accdb)}; Dbq=C:\\Users\\...............(file location)') 
     cursor = cnxn.cursor() 
     cursor.execute("insert into Progress(CockpitDrill,Mirrors,MoveOff,TurnLeft) values (?,?,?,?)",cockpit,mirrors,moveOff,turnLeft,) 
     cnxn.commit() 

그래서 나는이 필드를 대체 할 방법에 대해 설명합니다. CockpitDrill을 '2'에서 '3'(모두 문자열)로 변경하려고한다고 가정 해 봅시다.

도움을 주시면 감사하겠습니다.

cnxn = pyodbc.connect('Driver={Microsoft Access Driver (*.mdb, *.accdb)}; Dbq=C:\\Users\\...............(file location)') 
    cursor = cnxn.cursor() 
    cursor.execute("UPDATE progress SET CockpitDrill = ? WHERE progress_primarykey = ?", newcockpitdrillvalue, oldprimarykeyvalue) 
    cnxn.commit() 

가 도움을합니까 :

답변

10

당신은 지금 당신의 INSERT를 실행하는 것처럼 UPDATE 문을 실행할 수 있습니까? "progress_primarykey"는 데이터베이스 테이블의 기본 키 필드에 부여한 이름입니다. 그건 당신이 단지 하나의 레코드를 변경하고 그 기본 키를 알고 싶어한다고 가정합니다.