PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Променете началната стойност на Django AutoField

Начини за задаване/нулиране на последователност в PostgreSQL

(не е задължително към max(id) ).

  • Това е простият начин, който имате във въпроса. Можете да настроите последователността да започва от произволно число с setval() :

    SELECT setval('tbl_id_seq');
    
  • След това има стандартен SQL начин с ALTER SEQUENCE прави същото:

    ALTER SEQUENCE myseq RESTART WITH 1;
    
  • Ако искате да рестартирате своите поредици с числа, различни от 1 по подразбиране:

    CREATE TABLE foo(id serial, a text);      -- creates sequence "foo_id_seq"
    INSERT INTO foo(a) VALUES('a');           -- seq. starts with --> 1
    
    ALTER SEQUENCE foo_id_seq START WITH 10;  -- doesn't restart sequence
    INSERT INTO foo(a) VALUES('b');           --> 2
    
    ALTER SEQUENCE foo_id_seq RESTART;        -- restarts sequence
    INSERT INTO foo(a) VALUES('c');           --> 10
    
  • Има и друг начин, когато изпразните таблица с TRUNCATE:

    TRUNCATE foo RESTART IDENTITY;
    

    Неявно изпълнява ALTER SEQUENCE foo_id_seq RESTART;




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да преместя pandas DataFrame в PostgreSQL таблица?

  2. Може ли PostgreSQL да има ограничение за уникалност върху елементите на масива?

  3. Как age() работи в PostgreSQL

  4. свържете се със сървъра на postgres на google compute engine

  5. PostgreSQL поддържа ли прозрачно компресиране на таблици (фрагменти)?