Latest Post

Khái niệm về Solidity và tổng quan về ngôn ngữ lập trình Solidity Phương pháp kiểm tra nhiệt độ CPU đơn giản

Để tạo một bảng trong Cơ sở dữ liệu PostgreSQL, chúng ta sử dụng câu lệnh SQL “CREATE TABLE“.

Syntax:

CREATE TABLE table_name (
column_name TYPE column_constraint,
table_constraint table_constraint
) INHERITS existing_table_name;

Với

  • column_name TYPE column_constraint: Danh sách các cột trong bảng bao gồm tên, kiểu dữ liệu, length,…
  • table_constraint table_constraint: Mối quan hệ với các bảng khác
  • INHERITS existing_table_name: Kế thừa từ 1 bảng khác trong CSDL

VD: Tạo 2 bảng CSDL Users và Groups:

Lệnh SQL để tạo bảng Groups:

-- Table: public.groups

-- DROP TABLE public.groups;

CREATE TABLE public.groups
(
    group_id integer NOT NULL,
    group_name character varying COLLATE pg_catalog."default" NOT NULL,
    created_at timestamp without time zone NOT NULL,
    updated_at timestamp without time zone,
    deleted_at timestamp without time zone,
    CONSTRAINT groups_pkey PRIMARY KEY (group_id)
)
WITH (
    OIDS = FALSE
)
TABLESPACE pg_default;

ALTER TABLE public.groups
    OWNER to postgres;

Kết quả:

Lệnh SQL để tạo bảng users:

-- Table: public.users

-- DROP TABLE public.users;

CREATE TABLE public.users
(
    user_id integer NOT NULL,
    group_id integer NOT NULL,
    username character varying COLLATE pg_catalog."default" NOT NULL,
    password character varying COLLATE pg_catalog."default" NOT NULL,
    email character varying COLLATE pg_catalog."default",
    created_at timestamp without time zone NOT NULL,
    updated_at timestamp without time zone,
    deleted_at timestamp without time zone,
    CONSTRAINT users_pkey PRIMARY KEY (user_id),
    CONSTRAINT fk_group_id FOREIGN KEY (group_id)
        REFERENCES public.groups (group_id) MATCH SIMPLE
        ON UPDATE CASCADE
        ON DELETE CASCADE
)
WITH (
    OIDS = FALSE
)
TABLESPACE pg_default;

ALTER TABLE public.users
    OWNER to postgres;

Với fk_group_id là foreign key liên kết giữa 2 bảng users và groups thông qua cột group_id

Kết quả:

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *