2010-05-12 2 views
2

odbc를 사용하여 Excel 데이터베이스를 통해 mysql 데이터베이스에 연결합니다.@@ identity를 선택하면 어떻게됩니까?

이 라인은 무엇을합니까?

With rs 
     .AddNew ' create a new record 
     ' add values to each field in the record 
     .Fields("datapath") = dpath 
     .Fields("analysistime") = atime 
     .Fields("reporttime") = rtime 
     .Fields("lastcalib") = lcalib 
     .Fields("analystname") = aname 
     .Fields("reportname") = rname 
     .Fields("batchstate") = "bstate" 
     .Fields("instrument") = "NA" 
     .Update ' stores the new record 
    End With 

단지 .Fields를 업데이트 ("악기") = "NA"는, 다른 모든 필드는 NULL 값

을두고있다 :

Set rs = oConn.Execute("SELECT @@identity", , adCmdText) 

나는 문제가 데이터베이스를 업데이트하는 데 문제

답변

5

현재 연결의 IDENTITY COLUMN에 삽입 된 마지막 값을 선택하고 반환합니다.

다음은 주제

http://dev.mysql.com/doc/refman/5.0/en/getting-unique-id.html

+0

감사합니다. raj, 제발 저에게 예를 들어 주시겠습니까? –

+0

+1, 아이디 열에 대해서만 작동한다는 점에 유의해야합니다. –

+0

질문의 두 번째 부분에도 잘 대답 할 수 있습니다. –

1

그것은 당신이 데이터베이스에 삽입 된 마지막 레코드의 ID를 검색에 참고 자료입니다. 참조 : http://www.kamath.com/tutorials/tut007_identity.asp

+0

사실이 질문에 감사드립니다. 한 번 다른 스레드에 삽입 한 행의 ID를 얻는 방법에 대한 질문을하고 변수를 선언하라는 응답을 받았습니다. 저는 어딘가에서'@@ identity '에 대해 들어 봤다는 것을 알았습니다! –

+0

떠오르는 별에 감사드립니다. 질문의 두 번째 부분에도 답변 해주세요. –

1

AUTO_INCREMENT 열에서 마지막으로 삽입 된 ID를 검색합니다. 그러나, 나는 LAST_INSERT_ID()가 MYSQL에서 사용할 적절한 함수라고 생각했다. 설명서에서 @@ IDENTITY에 대한 참조를 본 적이 없습니다. 나는 그것이 단지 SQL Server/Sybase 구조라고 생각했다.

관련 문제