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

pg_dump проблеми със сериен тип данни

От документи :

Типовете данни smallserial , serial и bigserial не са истински типове, а просто нотационно удобство за създаване на колони с уникален идентификатор (подобно на свойството AUTO_INCREMENT, поддържано от някои други бази данни). В текущата реализация, указвайки:

CREATE TABLE tablename (
    colname SERIAL
);

е еквивалентно на указване на:

CREATE SEQUENCE tablename_colname_seq;
CREATE TABLE tablename (
    colname integer NOT NULL DEFAULT nextval('tablename_colname_seq')
);
ALTER SEQUENCE tablename_colname_seq OWNED BY tablename.colname;

Така създадохме колона с цели числа и уредихме нейните стойности по подразбиране да бъдат присвоени от генератор на последователности. Приложено е ограничение NOT NULL, за да се гарантира, че нулева стойност не може да бъде вмъкната. (В повечето случаи бихте искали също да прикачите ограничение UNIQUE или PRIMARY KEY, за да предотвратите случайно вмъкване на дублиращи се стойности, но това не е автоматично.) Накрая, последователността се маркира като „притежаван от“ колоната, така че ще бъдат премахнати, ако колоната или таблицата бъдат премахнати.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да пуснете потребител в postgre, ако има зависими обекти

  2. JodaTime с JPA, PostgreSQL и NULL стойности

  3. Как мога да добавя колона, която не позволява нулеви стойности в база данни на Postgresql?

  4. MySQL срещу PostgreSQL? Кое да избера за моя проект Django?

  5. PostgreSQL, персонализиран агрегат