SQLite 데이터베이스가 기본 키 ID를 정확히 어떻게 업데이트합니까?

Apurva

내가 테이블이 있다고 가정 contacts

  id        Name            Contact_No
-----------------------------------------
   1        abc                12345
   2        lmn                56784
   3        pqr                83654
   4        uvw                17637
   5        xyz                98345

내가하면 3 행을 삭제 데이터베이스에서, 무엇이 될 id삭제 된 행 다음 행을?

그리고 행 4를 업데이트하면 데이터베이스를 업데이트 한 후에도 이 주어 id지거나 행 4의 ID가 동일하게 유지됩니까?

autoincrement의 차이점은 무엇입니까 autoincrement not null? 공식 문서에 따르면 성능이 저하되고 데이터베이스가 느리게 작동합니다. 함께 작성하는 것이 필수 integer primary key입니까?

많은 스택 오버플로 답변을 읽었고 SQLite 공식 문서 도 읽었 지만 얻을 수 없었습니다.

njzk2

id이름 이라고 가정 합니다 INTEGER PRIMARY KEY.

행을 업데이트하면 여전히 동일한 행이므로 ID가 변경되지 않습니다. (그게 전체 업데이트 지점입니다).

새 ID 생성과 관련하여 모든 것이 링크 된 문서에 있습니다.

관련 섹션 :

AUTOINCREMENT없이

INSERT에서 ROWID 또는 INTEGER PRIMARY KEY 열에 명시 적으로 값이 지정되지 않은 경우 일반적으로 현재 사용중인 가장 큰 ROWID보다 많은 사용되지 않는 정수로 자동으로 채워집니다.

엄격한 규칙은 없으며 구현에 따라 달라질 수 있습니다. 일반적으로 select max(id)+1. 경우 6이지만 5 행을 삭제하면 ID 5를 재사용 할 수 있습니다. (그러나 이것에 의존하지 마십시오).

AUTOINCREMENT 사용

열에 INTEGER PRIMARY KEY AUTOINCREMENT (...) 유형이있는 경우 새 행에 대해 선택된 ROWID는 이전에 동일한 테이블에 존재했던 가장 큰 ROWID보다 하나 이상 큽니다. 테이블에 데이터가 포함 된 적이없는 경우 ROWID 1이 사용됩니다.

따라서 추가 NOT NULL하는 AUTOINCREMENT것은 무의미합니다.

귀하의 경우, 그 전에 삭제 한 행 수에 관계없이 다음 ID는 6입니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Laravel 데이터베이스 마이그레이션에서 작동하는 비 ID 기본 키를 어떻게 정의 할 수 있습니까?

분류에서Dev

Entity framewrok은 데이터베이스 우선 접근 방식에서 기본 키를 어떻게 결정합니까?

분류에서Dev

기존 Rails 데이터베이스에 외래 키를 어떻게 자동으로 추가합니까?

분류에서Dev

활동 (SQLite)에서 데이터 수정 후 프래그먼트를 어떻게 업데이트합니까?

분류에서Dev

업데이트 할 수있는 패키지를 어떻게 확인합니까?

분류에서Dev

업데이트 할 수있는 패키지를 어떻게 확인합니까?

분류에서Dev

Android 앱의 콘텐츠 데이터베이스를 정기적으로 업데이트하려면 어떻게해야합니까?

분류에서Dev

SQLite의 테이블에서 가져온 데이터를 기반으로 ContentView를 어떻게 설정합니까?

분류에서Dev

내 SQL 데이터베이스를 정확히 복제하려면 어떻게해야합니까?

분류에서Dev

SQLite 데이터 브라우저를 .sqlite3 파일의 기본 애플리케이션으로 설정하려면 어떻게해야합니까?

분류에서Dev

SQLite 데이터베이스는 정확히 언제 초기화됩니까?

분류에서Dev

sqlite, android의 특정 기본 키 값을 업데이트 하시겠습니까?

분류에서Dev

특정 Windows 업데이트를 숨기려면 어떻게합니까?

분류에서Dev

데이터베이스 sqlite에 이미지를 추가하려면 어떻게해야합니까?

분류에서Dev

Spring Boot에서 자동 생성 된 기본 키 값을 설정하지 않고 POST 본문에 데이터를 보내려면 어떻게해야합니까?

분류에서Dev

기본 Python : 데이터 시리즈를 어떻게 정규화합니까?

분류에서Dev

Windows를 최신 Fall Creator 릴리스로 업데이트 한시기를 정확히 어떻게 확인할 수 있습니까?

분류에서Dev

내 Android SQLite 데이터베이스를 어떻게 수정할 수 있습니까?

분류에서Dev

기본 키를 정의하지 않고 SQL 데이터베이스 만들기

분류에서Dev

주어진 접두사로 기본 키를 설정하고 데이터베이스에 자동 증분

분류에서Dev

노드가 화면의 특정 y 좌표를 통과 할 때 스프라이트 키트의 점수를 어떻게 업데이트합니까?

분류에서Dev

SQLite 데이터베이스에서 Select 쿼리의 데이터를 String 데이터 유형으로 가져 오려면 어떻게해야합니까?

분류에서Dev

SQLite에서 필드를 업데이트하고 'b'로 설정하려면 어떻게해야합니까?

분류에서Dev

rpm은 패키지가 업데이트인지 어떻게 확인합니까?

분류에서Dev

두 명의 특정 플레이어가있는 데이터베이스에서 모든 경기를 어떻게 선택합니까?

분류에서Dev

Python / SQLite3에서 데이터베이스 테이블을 쿼리하는 데 사용할 변수를 어떻게 정의합니까?

분류에서Dev

그들이 같은 경우 어떻게 중포 기지의, 데이타베이스의 특정 키를 얻고 그들을 비교합니까?

분류에서Dev

사용자 지정 기본 어댑터로 Listview를 새로 고치는 방법은 sqlite 데이터베이스와 연결됩니까?

분류에서Dev

BitLocker는 내 데이터를 정확히 어떻게 보호합니까?

Related 관련 기사

  1. 1

    Laravel 데이터베이스 마이그레이션에서 작동하는 비 ID 기본 키를 어떻게 정의 할 수 있습니까?

  2. 2

    Entity framewrok은 데이터베이스 우선 접근 방식에서 기본 키를 어떻게 결정합니까?

  3. 3

    기존 Rails 데이터베이스에 외래 키를 어떻게 자동으로 추가합니까?

  4. 4

    활동 (SQLite)에서 데이터 수정 후 프래그먼트를 어떻게 업데이트합니까?

  5. 5

    업데이트 할 수있는 패키지를 어떻게 확인합니까?

  6. 6

    업데이트 할 수있는 패키지를 어떻게 확인합니까?

  7. 7

    Android 앱의 콘텐츠 데이터베이스를 정기적으로 업데이트하려면 어떻게해야합니까?

  8. 8

    SQLite의 테이블에서 가져온 데이터를 기반으로 ContentView를 어떻게 설정합니까?

  9. 9

    내 SQL 데이터베이스를 정확히 복제하려면 어떻게해야합니까?

  10. 10

    SQLite 데이터 브라우저를 .sqlite3 파일의 기본 애플리케이션으로 설정하려면 어떻게해야합니까?

  11. 11

    SQLite 데이터베이스는 정확히 언제 초기화됩니까?

  12. 12

    sqlite, android의 특정 기본 키 값을 업데이트 하시겠습니까?

  13. 13

    특정 Windows 업데이트를 숨기려면 어떻게합니까?

  14. 14

    데이터베이스 sqlite에 이미지를 추가하려면 어떻게해야합니까?

  15. 15

    Spring Boot에서 자동 생성 된 기본 키 값을 설정하지 않고 POST 본문에 데이터를 보내려면 어떻게해야합니까?

  16. 16

    기본 Python : 데이터 시리즈를 어떻게 정규화합니까?

  17. 17

    Windows를 최신 Fall Creator 릴리스로 업데이트 한시기를 정확히 어떻게 확인할 수 있습니까?

  18. 18

    내 Android SQLite 데이터베이스를 어떻게 수정할 수 있습니까?

  19. 19

    기본 키를 정의하지 않고 SQL 데이터베이스 만들기

  20. 20

    주어진 접두사로 기본 키를 설정하고 데이터베이스에 자동 증분

  21. 21

    노드가 화면의 특정 y 좌표를 통과 할 때 스프라이트 키트의 점수를 어떻게 업데이트합니까?

  22. 22

    SQLite 데이터베이스에서 Select 쿼리의 데이터를 String 데이터 유형으로 가져 오려면 어떻게해야합니까?

  23. 23

    SQLite에서 필드를 업데이트하고 'b'로 설정하려면 어떻게해야합니까?

  24. 24

    rpm은 패키지가 업데이트인지 어떻게 확인합니까?

  25. 25

    두 명의 특정 플레이어가있는 데이터베이스에서 모든 경기를 어떻게 선택합니까?

  26. 26

    Python / SQLite3에서 데이터베이스 테이블을 쿼리하는 데 사용할 변수를 어떻게 정의합니까?

  27. 27

    그들이 같은 경우 어떻게 중포 기지의, 데이타베이스의 특정 키를 얻고 그들을 비교합니까?

  28. 28

    사용자 지정 기본 어댑터로 Listview를 새로 고치는 방법은 sqlite 데이터베이스와 연결됩니까?

  29. 29

    BitLocker는 내 데이터를 정확히 어떻게 보호합니까?

뜨겁다태그

보관