ich habe hier ein Beispiel mit 2 Table
Code: Alles auswählen
-- Table: country
-- DROP TABLE country;
CREATE TABLE country
(
code integer NOT NULL,
name character(35),
CONSTRAINT "PK_Ct" PRIMARY KEY (code )
)
WITH (
OIDS=FALSE
);
ALTER TABLE country
OWNER TO postgres;
Code: Alles auswählen
-- Database: consumo
-- DROP DATABASE consumo;
CREATE DATABASE consumo
WITH OWNER = postgres
ENCODING = 'UTF8'
TABLESPACE = pg_default
LC_COLLATE = 'Spanish, Chile'
LC_CTYPE = 'Spanish, Chile'
CONNECTION LIMIT = -1;
-- Table: clients
-- DROP TABLE clients;
CREATE TABLE clients
(
id integer NOT NULL,
name character(35),
lastname character(35),
codect integer,
CONSTRAINT "Ky_Cu" PRIMARY KEY (id ),
CONSTRAINT "Fk_Ct" FOREIGN KEY (codect)
REFERENCES country (code) MATCH SIMPLE
ON UPDATE CASCADE ON DELETE SET NULL
)
WITH (
OIDS=FALSE
);
ALTER TABLE clients
OWNER TO postgres;
a.) 2 x Table d.h. 2 x Connectionen für getrennte Result Sets, oder beide zusammen "aufmachen" ?
b.) mit / ohne Thread ?
c.) wie "verknüpfe" ich die beiden Table ?
ich "denke" das es mit dieser Zeile zu tun hat
Code: Alles auswählen
REFERENCES country (code) MATCH SIMPLE
ON UPDATE CASCADE ON DELETE SET NULL
Code: Alles auswählen
REFERENCES country (code)
REFERENCES -> "Verweis"
country -> Table
(code) -> Parameter "was" er im PRIMARY KEY (code) suchen soll
... aber die "verwende" ich das ?
Code: Alles auswählen
ON UPDATE CASCADE
ON DELETE SET NULL
"ON UPDATE" und "ON DELETE" wären ja Events ... aber erst "nach" einer User Aktion
"CASCADE" find ich im Pg Handbuch nur mit "DELETE" oder "DROP" aber nicht mit "ON UPDATE"