2017-09-10 1 views
0

마지막 ID를 업데이트하기 위해 SELECT LAST_INSERT_ID()를 사용해 보았지만 제로가되었습니다. 제발 도와주세요vb.net에서 마지막으로 업데이트 된 행의 mysql을 얻으십시오.

+0

하나를 마지막으로 업데이트 만 한 열을 반환합니다'LAST_INSERT_ID()'은'INSERT'와 같은 연결에서. INSERT를 수행하는 vb 코드의 시퀀스를 표시 한 다음 해당 ID를 쿼리 할 수 ​​있습니까? 질문을 편집하십시오. –

+1

last_insert_id()는 마지막으로 삽입 된 행의 ID를 제공하지만 마지막 업데이트 된 행을 묻습니다. 바로 거기에 충돌이 있습니다. –

+0

안녕하십니까, 회신 해 주셔서 감사합니다. 이 매뉴얼 [link] (https://dev.mysql.com/doc/refman/5.7/en/mysql-insert-id.html)에 따르면 mysql_insert_id는 마지막으로 삽입 된 ID 또는 업데이트를 리턴한다. 난 그냥 업데이트 된 행의 마지막 ID를 얻고 싶습니다. – NoobProgrammer

답변

1

테이블에 DATETIME 유형의 새 열을 추가하십시오. attribute 섹션에서 on update CURRENT timestamp 옵션을 선택하십시오. 이 f}으로 컬럼에서 갱신이 _ 생할 때마다 데이터베이스는 자동으로이 행을 갱신합니다. 그런 다음 스크립트에서 SQL 명령을 작성해야합니다.

SELECT id fROM table ORDER BY name_of_datetime_column DESC LIMIT 1 

당신은 가져 오기합니다

+0

영리한 친구. 고맙습니다. – NoobProgrammer

1

Connector/.NET을 사용하는 경우 MySqlCommand 개체에는 LastInsertedId 속성이 있습니다. INSERT 쿼리 바로 다음에 해당 속성 값을 검색 할 수 있으며 다른 쿼리를 실행할 필요가 없습니다.

INSERT 작업을 수행하지 않는 경우 LAST_INSERTED_ID() 값이 표시되지 않습니다. 만약 당신이하고있는 일이 모두 UPDATE이라면 LAST_INSERTED_ID()을 잊어 버리십시오.

+0

업데이트 된 행의 마지막 ID를 가져 오는 또 다른 방법이 있습니까? 아니면 불가능한가요? :( – NoobProgrammer

관련 문제