Files
k3s/apps/postgres/backups/postgres-backup-20251231_064007.sql

1122 lines
25 KiB
PL/PgSQL
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
--
-- PostgreSQL database cluster dump
--
\restrict TxL4kAbPon226DZYUHp47qFqdmHdahSXuQMSjIRM4KgpXPztB7SU5ZbX1Ho2uaN
SET default_transaction_read_only = off;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
--
-- Roles
--
CREATE ROLE myuser;
ALTER ROLE myuser WITH SUPERUSER INHERIT CREATEROLE CREATEDB LOGIN REPLICATION BYPASSRLS PASSWORD 'SCRAM-SHA-256$4096:lcasyFLTxsODZ2pTQzSfaQ==$Q9F2EsOXVyUo6hdnr4vPuErS4wNLYQ4aiszK/l4uar0=:ZOUai23wJ0E2uPl9ZVldTF4Kf6IduAMK+smPEs8LcjE=';
--
-- User Configurations
--
\unrestrict TxL4kAbPon226DZYUHp47qFqdmHdahSXuQMSjIRM4KgpXPztB7SU5ZbX1Ho2uaN
--
-- Databases
--
--
-- Database "template1" dump
--
\connect template1
--
-- PostgreSQL database dump
--
\restrict EVqvAcoaKMwbiBprCl9lPK9CA0vqbUHYB8u1EeX81QmawOQHBzt74khoAQIAcXl
-- Dumped from database version 16.11 (Debian 16.11-1.pgdg13+1)
-- Dumped by pg_dump version 16.11 (Debian 16.11-1.pgdg13+1)
SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config('search_path', '', false);
SET check_function_bodies = false;
SET xmloption = content;
SET client_min_messages = warning;
SET row_security = off;
--
-- PostgreSQL database dump complete
--
\unrestrict EVqvAcoaKMwbiBprCl9lPK9CA0vqbUHYB8u1EeX81QmawOQHBzt74khoAQIAcXl
--
-- Database "mydb" dump
--
--
-- PostgreSQL database dump
--
\restrict PWAkRltnIYXWYaZ8HdFgY7RYpugTOWwfVPdlgVRbvSNZ1QApQ7QMeVZLLtpz0QK
-- Dumped from database version 16.11 (Debian 16.11-1.pgdg13+1)
-- Dumped by pg_dump version 16.11 (Debian 16.11-1.pgdg13+1)
SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config('search_path', '', false);
SET check_function_bodies = false;
SET xmloption = content;
SET client_min_messages = warning;
SET row_security = off;
--
-- Name: mydb; Type: DATABASE; Schema: -; Owner: myuser
--
CREATE DATABASE mydb WITH TEMPLATE = template0 ENCODING = 'UTF8' LOCALE_PROVIDER = libc LOCALE = 'en_US.utf8';
ALTER DATABASE mydb OWNER TO myuser;
\unrestrict PWAkRltnIYXWYaZ8HdFgY7RYpugTOWwfVPdlgVRbvSNZ1QApQ7QMeVZLLtpz0QK
\connect mydb
\restrict PWAkRltnIYXWYaZ8HdFgY7RYpugTOWwfVPdlgVRbvSNZ1QApQ7QMeVZLLtpz0QK
SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config('search_path', '', false);
SET check_function_bodies = false;
SET xmloption = content;
SET client_min_messages = warning;
SET row_security = off;
--
-- Name: uuid-ossp; Type: EXTENSION; Schema: -; Owner: -
--
CREATE EXTENSION IF NOT EXISTS "uuid-ossp" WITH SCHEMA public;
--
-- Name: EXTENSION "uuid-ossp"; Type: COMMENT; Schema: -; Owner:
--
COMMENT ON EXTENSION "uuid-ossp" IS 'generate universally unique identifiers (UUIDs)';
--
-- Name: address; Type: TYPE; Schema: public; Owner: myuser
--
CREATE TYPE public.address AS (
street text,
city text,
zip text
);
ALTER TYPE public.address OWNER TO myuser;
--
-- Name: trg_orders_after_delete_restore_stock(); Type: FUNCTION; Schema: public; Owner: myuser
--
CREATE FUNCTION public.trg_orders_after_delete_restore_stock() RETURNS trigger
LANGUAGE plpgsql
AS $$
BEGIN
UPDATE public.products
SET stock = stock + OLD.quantity,
updated_at = NOW()
WHERE id = OLD.product_id;
RETURN NULL;
END;
$$;
ALTER FUNCTION public.trg_orders_after_delete_restore_stock() OWNER TO myuser;
--
-- Name: trg_orders_before_insert_decrement_stock(); Type: FUNCTION; Schema: public; Owner: myuser
--
CREATE FUNCTION public.trg_orders_before_insert_decrement_stock() RETURNS trigger
LANGUAGE plpgsql
AS $$
DECLARE
current_stock int;
BEGIN
SELECT stock INTO current_stock
FROM public.products
WHERE id = NEW.product_id
FOR UPDATE;
IF NOT FOUND THEN
RAISE EXCEPTION 'product % not found', NEW.product_id;
END IF;
IF current_stock < NEW.quantity THEN
RAISE EXCEPTION 'insufficient stock: have %, need %',
current_stock, NEW.quantity;
END IF;
UPDATE public.products
SET stock = stock - NEW.quantity,
updated_at = NOW()
WHERE id = NEW.product_id;
RETURN NEW;
END;
$$;
ALTER FUNCTION public.trg_orders_before_insert_decrement_stock() OWNER TO myuser;
--
-- Name: trg_orders_before_update_adjust_stock(); Type: FUNCTION; Schema: public; Owner: myuser
--
CREATE FUNCTION public.trg_orders_before_update_adjust_stock() RETURNS trigger
LANGUAGE plpgsql
AS $$
DECLARE
old_prod_stock int;
new_prod_stock int;
BEGIN
-- 沒變更商品也沒變更數量就略過
IF NEW.product_id = OLD.product_id AND NEW.quantity = OLD.quantity THEN
RETURN NEW;
END IF;
-- 先把舊商品庫存加回去
IF OLD.product_id IS NOT NULL THEN
SELECT stock INTO old_prod_stock
FROM public.products
WHERE id = OLD.product_id
FOR UPDATE;
IF NOT FOUND THEN
RAISE EXCEPTION 'old product % not found', OLD.product_id;
END IF;
UPDATE public.products
SET stock = stock + OLD.quantity,
updated_at = NOW()
WHERE id = OLD.product_id;
END IF;
-- 再扣新商品庫存
SELECT stock INTO new_prod_stock
FROM public.products
WHERE id = NEW.product_id
FOR UPDATE;
IF NOT FOUND THEN
RAISE EXCEPTION 'new product % not found', NEW.product_id;
END IF;
IF new_prod_stock < NEW.quantity THEN
RAISE EXCEPTION 'insufficient stock after update: have %, need %',
new_prod_stock, NEW.quantity;
END IF;
UPDATE public.products
SET stock = stock - NEW.quantity,
updated_at = NOW()
WHERE id = NEW.product_id;
RETURN NEW;
END;
$$;
ALTER FUNCTION public.trg_orders_before_update_adjust_stock() OWNER TO myuser;
SET default_tablespace = '';
SET default_table_access_method = heap;
--
-- Name: company; Type: TABLE; Schema: public; Owner: myuser
--
CREATE TABLE public.company (
id integer NOT NULL,
name text NOT NULL,
location public.address
);
ALTER TABLE public.company OWNER TO myuser;
--
-- Name: company_id_seq; Type: SEQUENCE; Schema: public; Owner: myuser
--
CREATE SEQUENCE public.company_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
ALTER SEQUENCE public.company_id_seq OWNER TO myuser;
--
-- Name: company_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: myuser
--
ALTER SEQUENCE public.company_id_seq OWNED BY public.company.id;
--
-- Name: devices; Type: TABLE; Schema: public; Owner: myuser
--
CREATE TABLE public.devices (
id integer NOT NULL,
ip_address inet,
mac_address macaddr
);
ALTER TABLE public.devices OWNER TO myuser;
--
-- Name: devices_id_seq; Type: SEQUENCE; Schema: public; Owner: myuser
--
CREATE SEQUENCE public.devices_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
ALTER SEQUENCE public.devices_id_seq OWNER TO myuser;
--
-- Name: devices_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: myuser
--
ALTER SEQUENCE public.devices_id_seq OWNED BY public.devices.id;
--
-- Name: person; Type: TABLE; Schema: public; Owner: myuser
--
CREATE TABLE public.person (
id integer NOT NULL,
name text NOT NULL,
birthdate date
);
ALTER TABLE public.person OWNER TO myuser;
--
-- Name: employee; Type: TABLE; Schema: public; Owner: myuser
--
CREATE TABLE public.employee (
employee_id integer NOT NULL,
department text
)
INHERITS (public.person);
ALTER TABLE public.employee OWNER TO myuser;
--
-- Name: employee_employee_id_seq; Type: SEQUENCE; Schema: public; Owner: myuser
--
CREATE SEQUENCE public.employee_employee_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
ALTER SEQUENCE public.employee_employee_id_seq OWNER TO myuser;
--
-- Name: employee_employee_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: myuser
--
ALTER SEQUENCE public.employee_employee_id_seq OWNED BY public.employee.employee_id;
--
-- Name: events; Type: TABLE; Schema: public; Owner: myuser
--
CREATE TABLE public.events (
id integer NOT NULL,
name text,
start_time timestamp without time zone,
start_time_tz timestamp with time zone
);
ALTER TABLE public.events OWNER TO myuser;
--
-- Name: events_id_seq; Type: SEQUENCE; Schema: public; Owner: myuser
--
CREATE SEQUENCE public.events_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
ALTER SEQUENCE public.events_id_seq OWNER TO myuser;
--
-- Name: events_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: myuser
--
ALTER SEQUENCE public.events_id_seq OWNED BY public.events.id;
--
-- Name: members; Type: TABLE; Schema: public; Owner: myuser
--
CREATE TABLE public.members (
id integer NOT NULL,
username character varying(50) NOT NULL,
email text,
created_at timestamp without time zone DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT members_email_check CHECK ((email ~~ '%@%'::text))
);
ALTER TABLE public.members OWNER TO myuser;
--
-- Name: members_id_seq; Type: SEQUENCE; Schema: public; Owner: myuser
--
CREATE SEQUENCE public.members_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
ALTER SEQUENCE public.members_id_seq OWNER TO myuser;
--
-- Name: members_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: myuser
--
ALTER SEQUENCE public.members_id_seq OWNED BY public.members.id;
--
-- Name: orders; Type: TABLE; Schema: public; Owner: myuser
--
CREATE TABLE public.orders (
id integer NOT NULL,
user_id integer NOT NULL,
product_id integer NOT NULL,
quantity integer DEFAULT 1 NOT NULL,
created_at timestamp with time zone DEFAULT now()
);
ALTER TABLE public.orders OWNER TO myuser;
--
-- Name: TABLE orders; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON TABLE public.orders IS '訂單資料表,紀錄使用者購買的商品';
--
-- Name: COLUMN orders.id; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.orders.id IS '訂單編號 (自動遞增)';
--
-- Name: COLUMN orders.user_id; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.orders.user_id IS '下單使用者,對應 users.id';
--
-- Name: COLUMN orders.product_id; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.orders.product_id IS '購買的商品,對應 products.id';
--
-- Name: COLUMN orders.quantity; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.orders.quantity IS '購買數量';
--
-- Name: COLUMN orders.created_at; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.orders.created_at IS '下單時間';
--
-- Name: orders_id_seq; Type: SEQUENCE; Schema: public; Owner: myuser
--
CREATE SEQUENCE public.orders_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
ALTER SEQUENCE public.orders_id_seq OWNER TO myuser;
--
-- Name: orders_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: myuser
--
ALTER SEQUENCE public.orders_id_seq OWNED BY public.orders.id;
--
-- Name: person_id_seq; Type: SEQUENCE; Schema: public; Owner: myuser
--
CREATE SEQUENCE public.person_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
ALTER SEQUENCE public.person_id_seq OWNER TO myuser;
--
-- Name: person_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: myuser
--
ALTER SEQUENCE public.person_id_seq OWNED BY public.person.id;
--
-- Name: products; Type: TABLE; Schema: public; Owner: myuser
--
CREATE TABLE public.products (
id integer NOT NULL,
name character varying(100) NOT NULL,
description text,
price numeric(10,2) NOT NULL,
stock integer DEFAULT 0,
created_at timestamp without time zone DEFAULT now(),
updated_at timestamp with time zone DEFAULT now()
);
ALTER TABLE public.products OWNER TO myuser;
--
-- Name: TABLE products; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON TABLE public.products IS '商品資料表,存放產品基本資訊';
--
-- Name: COLUMN products.id; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.products.id IS '商品編號 (自動遞增)';
--
-- Name: COLUMN products.name; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.products.name IS '商品名稱';
--
-- Name: COLUMN products.description; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.products.description IS '商品描述';
--
-- Name: COLUMN products.price; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.products.price IS '商品價格,最多兩位小數';
--
-- Name: COLUMN products.stock; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.products.stock IS '庫存數量';
--
-- Name: COLUMN products.created_at; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.products.created_at IS '建立時間';
--
-- Name: products_id_seq; Type: SEQUENCE; Schema: public; Owner: myuser
--
CREATE SEQUENCE public.products_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
ALTER SEQUENCE public.products_id_seq OWNER TO myuser;
--
-- Name: products_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: myuser
--
ALTER SEQUENCE public.products_id_seq OWNED BY public.products.id;
--
-- Name: users; Type: TABLE; Schema: public; Owner: myuser
--
CREATE TABLE public.users (
id integer NOT NULL,
username character varying(50) NOT NULL,
email character varying(100) NOT NULL,
password character varying(200) NOT NULL,
created_at timestamp without time zone DEFAULT now(),
updated_at timestamp without time zone DEFAULT now()
);
ALTER TABLE public.users OWNER TO myuser;
--
-- Name: TABLE users; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON TABLE public.users IS '使用者資料表,儲存帳號與登入資訊';
--
-- Name: COLUMN users.id; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.users.id IS '使用者編號 (自動遞增)';
--
-- Name: COLUMN users.username; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.users.username IS '帳號名稱';
--
-- Name: COLUMN users.email; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.users.email IS '使用者 Email必須唯一';
--
-- Name: COLUMN users.password; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.users.password IS '密碼 (通常存雜湊值)';
--
-- Name: COLUMN users.created_at; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.users.created_at IS '建立時間';
--
-- Name: COLUMN users.updated_at; Type: COMMENT; Schema: public; Owner: myuser
--
COMMENT ON COLUMN public.users.updated_at IS '更新時間';
--
-- Name: users_id_seq; Type: SEQUENCE; Schema: public; Owner: myuser
--
CREATE SEQUENCE public.users_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
ALTER SEQUENCE public.users_id_seq OWNER TO myuser;
--
-- Name: users_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: myuser
--
ALTER SEQUENCE public.users_id_seq OWNED BY public.users.id;
--
-- Name: company id; Type: DEFAULT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.company ALTER COLUMN id SET DEFAULT nextval('public.company_id_seq'::regclass);
--
-- Name: devices id; Type: DEFAULT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.devices ALTER COLUMN id SET DEFAULT nextval('public.devices_id_seq'::regclass);
--
-- Name: employee id; Type: DEFAULT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.employee ALTER COLUMN id SET DEFAULT nextval('public.person_id_seq'::regclass);
--
-- Name: employee employee_id; Type: DEFAULT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.employee ALTER COLUMN employee_id SET DEFAULT nextval('public.employee_employee_id_seq'::regclass);
--
-- Name: events id; Type: DEFAULT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.events ALTER COLUMN id SET DEFAULT nextval('public.events_id_seq'::regclass);
--
-- Name: members id; Type: DEFAULT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.members ALTER COLUMN id SET DEFAULT nextval('public.members_id_seq'::regclass);
--
-- Name: orders id; Type: DEFAULT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.orders ALTER COLUMN id SET DEFAULT nextval('public.orders_id_seq'::regclass);
--
-- Name: person id; Type: DEFAULT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.person ALTER COLUMN id SET DEFAULT nextval('public.person_id_seq'::regclass);
--
-- Name: products id; Type: DEFAULT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.products ALTER COLUMN id SET DEFAULT nextval('public.products_id_seq'::regclass);
--
-- Name: users id; Type: DEFAULT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.users ALTER COLUMN id SET DEFAULT nextval('public.users_id_seq'::regclass);
--
-- Data for Name: company; Type: TABLE DATA; Schema: public; Owner: myuser
--
COPY public.company (id, name, location) FROM stdin;
1 Masterwork Tech (,,100)
\.
--
-- Data for Name: devices; Type: TABLE DATA; Schema: public; Owner: myuser
--
COPY public.devices (id, ip_address, mac_address) FROM stdin;
1 192.168.1.100 08:00:2b:01:02:03
\.
--
-- Data for Name: employee; Type: TABLE DATA; Schema: public; Owner: myuser
--
COPY public.employee (id, name, birthdate, employee_id, department) FROM stdin;
\.
--
-- Data for Name: events; Type: TABLE DATA; Schema: public; Owner: myuser
--
COPY public.events (id, name, start_time, start_time_tz) FROM stdin;
1 Meeting 2025-08-22 14:00:00 2025-08-22 06:00:00+00
2 Conference 2025-08-22 09:00:00 2025-08-22 09:00:00+00
\.
--
-- Data for Name: members; Type: TABLE DATA; Schema: public; Owner: myuser
--
COPY public.members (id, username, email, created_at) FROM stdin;
1 timmy timmy@example.com 2025-08-22 15:05:39.776007
2 alice alice@newmail.com 2025-08-22 15:05:39.776007
7 charlie charlie@example.com 2025-08-22 15:08:36.916081
\.
--
-- Data for Name: orders; Type: TABLE DATA; Schema: public; Owner: myuser
--
COPY public.orders (id, user_id, product_id, quantity, created_at) FROM stdin;
2 1 4 2 2025-08-22 05:40:34.59583+00
3 2 2 1 2025-08-22 05:40:34.59583+00
4 3 3 1 2025-08-22 05:40:34.59583+00
5 3 5 1 2025-08-22 05:40:34.59583+00
7 1 4 2 2025-08-22 06:00:14.71732+00
8 1 4 2 2025-08-22 06:19:30.955247+00
\.
--
-- Data for Name: person; Type: TABLE DATA; Schema: public; Owner: myuser
--
COPY public.person (id, name, birthdate) FROM stdin;
\.
--
-- Data for Name: products; Type: TABLE DATA; Schema: public; Owner: myuser
--
COPY public.products (id, name, description, price, stock, created_at, updated_at) FROM stdin;
2 Galaxy S24 Samsung 35900.00 30 2025-08-22 13:32:06.952067 2025-08-22 06:00:03.411145+00
3 MacBook Pro 14" 蘋果筆電 M3 晶片 69900.00 20 2025-08-22 13:32:06.952067 2025-08-22 06:00:03.411145+00
1 iPhone 15 Apple 最新款智慧型手機 38900.00 51 2025-08-22 13:32:06.952067 2025-08-22 06:09:18.833917+00
4 AirPods Pro 2 降噪藍牙耳機 7990.00 96 2025-08-22 13:32:06.952067 2025-08-22 06:20:25.194067+00
5 Nintendo Switch 2 新一代任天堂遊戲機 12990.00 40 2025-08-22 13:32:06.952067 2025-08-22 06:20:37.793073+00
\.
--
-- Data for Name: users; Type: TABLE DATA; Schema: public; Owner: myuser
--
COPY public.users (id, username, email, password, created_at, updated_at) FROM stdin;
1 alice alice@example.com hashed_pwd_123 2025-08-22 13:31:53.543448 2025-08-22 13:31:53.543448
2 bob bob@example.com hashed_pwd_456 2025-08-22 13:31:53.543448 2025-08-22 13:31:53.543448
3 charlie charlie@example.com hashed_pwd_789 2025-08-22 13:31:53.543448 2025-08-22 13:31:53.543448
\.
--
-- Name: company_id_seq; Type: SEQUENCE SET; Schema: public; Owner: myuser
--
SELECT pg_catalog.setval('public.company_id_seq', 1, true);
--
-- Name: devices_id_seq; Type: SEQUENCE SET; Schema: public; Owner: myuser
--
SELECT pg_catalog.setval('public.devices_id_seq', 1, true);
--
-- Name: employee_employee_id_seq; Type: SEQUENCE SET; Schema: public; Owner: myuser
--
SELECT pg_catalog.setval('public.employee_employee_id_seq', 1, false);
--
-- Name: events_id_seq; Type: SEQUENCE SET; Schema: public; Owner: myuser
--
SELECT pg_catalog.setval('public.events_id_seq', 2, true);
--
-- Name: members_id_seq; Type: SEQUENCE SET; Schema: public; Owner: myuser
--
SELECT pg_catalog.setval('public.members_id_seq', 9, true);
--
-- Name: orders_id_seq; Type: SEQUENCE SET; Schema: public; Owner: myuser
--
SELECT pg_catalog.setval('public.orders_id_seq', 8, true);
--
-- Name: person_id_seq; Type: SEQUENCE SET; Schema: public; Owner: myuser
--
SELECT pg_catalog.setval('public.person_id_seq', 1, false);
--
-- Name: products_id_seq; Type: SEQUENCE SET; Schema: public; Owner: myuser
--
SELECT pg_catalog.setval('public.products_id_seq', 5, true);
--
-- Name: users_id_seq; Type: SEQUENCE SET; Schema: public; Owner: myuser
--
SELECT pg_catalog.setval('public.users_id_seq', 3, true);
--
-- Name: company company_pkey; Type: CONSTRAINT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.company
ADD CONSTRAINT company_pkey PRIMARY KEY (id);
--
-- Name: devices devices_pkey; Type: CONSTRAINT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.devices
ADD CONSTRAINT devices_pkey PRIMARY KEY (id);
--
-- Name: events events_pkey; Type: CONSTRAINT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.events
ADD CONSTRAINT events_pkey PRIMARY KEY (id);
--
-- Name: members members_pkey; Type: CONSTRAINT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.members
ADD CONSTRAINT members_pkey PRIMARY KEY (id);
--
-- Name: members members_username_key; Type: CONSTRAINT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.members
ADD CONSTRAINT members_username_key UNIQUE (username);
--
-- Name: orders orders_pkey; Type: CONSTRAINT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.orders
ADD CONSTRAINT orders_pkey PRIMARY KEY (id);
--
-- Name: person person_pkey; Type: CONSTRAINT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.person
ADD CONSTRAINT person_pkey PRIMARY KEY (id);
--
-- Name: products products_pkey; Type: CONSTRAINT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.products
ADD CONSTRAINT products_pkey PRIMARY KEY (id);
--
-- Name: users users_email_key; Type: CONSTRAINT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.users
ADD CONSTRAINT users_email_key UNIQUE (email);
--
-- Name: users users_pkey; Type: CONSTRAINT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.users
ADD CONSTRAINT users_pkey PRIMARY KEY (id);
--
-- Name: idx_members_username; Type: INDEX; Schema: public; Owner: myuser
--
CREATE INDEX idx_members_username ON public.members USING btree (username);
--
-- Name: orders orders_after_delete_restore_stock; Type: TRIGGER; Schema: public; Owner: myuser
--
CREATE TRIGGER orders_after_delete_restore_stock AFTER DELETE ON public.orders FOR EACH ROW EXECUTE FUNCTION public.trg_orders_after_delete_restore_stock();
--
-- Name: orders orders_before_insert_decrement_stock; Type: TRIGGER; Schema: public; Owner: myuser
--
CREATE TRIGGER orders_before_insert_decrement_stock BEFORE INSERT ON public.orders FOR EACH ROW EXECUTE FUNCTION public.trg_orders_before_insert_decrement_stock();
--
-- Name: orders orders_before_update_adjust_stock; Type: TRIGGER; Schema: public; Owner: myuser
--
CREATE TRIGGER orders_before_update_adjust_stock BEFORE UPDATE ON public.orders FOR EACH ROW EXECUTE FUNCTION public.trg_orders_before_update_adjust_stock();
--
-- Name: orders orders_product_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.orders
ADD CONSTRAINT orders_product_id_fkey FOREIGN KEY (product_id) REFERENCES public.products(id);
--
-- Name: orders orders_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: myuser
--
ALTER TABLE ONLY public.orders
ADD CONSTRAINT orders_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
--
-- PostgreSQL database dump complete
--
\unrestrict PWAkRltnIYXWYaZ8HdFgY7RYpugTOWwfVPdlgVRbvSNZ1QApQ7QMeVZLLtpz0QK
--
-- Database "postgres" dump
--
\connect postgres
--
-- PostgreSQL database dump
--
\restrict WfbybiJFGsdG2zcyldILapMIAlJzgVhbHJPgqdfWAHerWnwgRKsWY5Xy7dQwQ7X
-- Dumped from database version 16.11 (Debian 16.11-1.pgdg13+1)
-- Dumped by pg_dump version 16.11 (Debian 16.11-1.pgdg13+1)
SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config('search_path', '', false);
SET check_function_bodies = false;
SET xmloption = content;
SET client_min_messages = warning;
SET row_security = off;
--
-- PostgreSQL database dump complete
--
\unrestrict WfbybiJFGsdG2zcyldILapMIAlJzgVhbHJPgqdfWAHerWnwgRKsWY5Xy7dQwQ7X
--
-- PostgreSQL database cluster dump complete
--