| Version 2 (modified by , 3 weeks ago) ( diff ) |
|---|
DDL
1. Вовед
DDL-от беше генериран од страна на Visual Paradigm, испробан локално и дополнет со constraints. Потоа, направивме pg_dump и го импортиравме на нашата remote база за предметот.
2. Поважни делови од кодот
Create table
CREATE TABLE user_app (
user_id bigint NOT NULL,
username character varying(20) NOT NULL,
email character varying(50) NOT NULL,
contact_phone character varying(50),
CONSTRAINT chk_email_format CHECK (((email)::text ~~ '%@%.%'::text))
);
CREATE TABLE order_cart (
user_id bigint NOT NULL, discount_id integer, status_id integer NOT NULL, order_id bigint NOT NULL, created_at timestamp without time zone NOT NULL, total_price numeric(12,2) NOT NULL, CONSTRAINT chk_order_total CHECK ((total_price >= (0)::numeric))
);
CREATE TABLE attribute (
name text NOT NULL,
attribute_id integer NOT NULL,
data_type character varying(20) NOT NULL,
description text,
is_required boolean NOT NULL
);
CREATE TABLE payment (
order_id bigint NOT NULL,
method_id integer NOT NULL,
payment_id integer NOT NULL,
amount_paid numeric(12,2),
processed_at timestamp without time zone NOT NULL,
transaction_id character varying(255) NOT NULL,
is_refunded boolean,
CONSTRAINT chk_payment_amount CHECK ((amount_paid >= (0)::numeric))
);
Constraints
ALTER TABLE ONLY waitlist_entry
ADD CONSTRAINT fk_waitlist_user FOREIGN KEY (user_id) REFERENCES public.user_app(user_id) ON UPDATE CASCADE ON DELETE CASCADE;
ALTER TABLE ONLY ticket
ADD CONSTRAINT fk_ticket_seat FOREIGN KEY (seat_id) REFERENCES public.seat(seat_id) ON UPDATE CASCADE ON DELETE SET NULL;
ALTER TABLE ONLY payment_method
ADD CONSTRAINT payment_method_method_name_key UNIQUE (method_name);
3. Резултат
Моментално имаме табели со точни типови на атрибути и со сите потребни (за сега) ограничувања.
Attachments (5)
- ddl.sql (58.4 KB ) - added by 7 days ago.
- views.sql (9.5 KB ) - added by 7 days ago.
- insert_proof.csv (704 bytes ) - added by 7 days ago.
- seeder.2.sql (36.4 KB ) - added by 5 days ago.
- seeder.sql (36.4 KB ) - added by 5 days ago.
Download all attachments as: .zip
Note:
See TracWiki
for help on using the wiki.
