Что означает данная запись в sql
Есть файл sql вот с таким содержимым
create table users
(
chat_id bigint not null
constraint users_pk
primary key,
username text,
full_name text,
referral integer,
id serial not null,
balance integer default 0 not null
);
alter table users
owner to postgres;
create unique index users_id_uindex
on users (id);
Что означает ограничение constraint users_pk и строки
alter table users
owner to postgres;
create unique index users_id_uindex
on users (id);
Ответы (2 шт):
chat_id bigint not null constraint users_pk primary key
Эта запись означает «создать колонку chat_id,
без нулей, с ограничением первичного ключа под названием
users_pk». Автор кода, наверное, хочет иметь
возможность позже изменить это ограничение и поэтому добавляет
ограничению известное имя.
alter table users owner to postgres
Здесь изменяется владелец таблицы. Таблица передаётся
пользователю postgres. Возможно,
чтобы исправить владение, если таблица создаётся из дампа
под другим пользователем.
create unique index users_id_uindex on users (id)
Здесь всё просто. Создаётся уникальный индекс
users_id_uindex на колонку id
таблицы users.
(Ну и да, всё это можно было поискать в документации.)
create table users— создать пользователей таблицalter table usersизменить пользователей таблицы владельца postgrescreate unique index— создать уникальный индексconstraint users_pk— хз, наверное блокирует
Уникальный индекс задаётся для того чтобы не было повторов значения Id к примеру у вас есть юзер с id-ом 54,вы удаляете запись,уже юзера под id-54 нету,следущий юзер будет не под id 54 а уже под id 55