Εντολές ορισμού δεδομένων (DDL) στην SQL

Βίντεο από τη διάλεξη

Παραδείγματα CREATE TABLE

Δημιουργία σχήματος βάσεων δεδομένων.

company SQL

CREATE TABLE departments
(
    depid      INTEGER     NOT NULL,
    depname    VARCHAR(50) NOT NULL,
    manager    INTEGER,
    CONSTRAINT pk_departments PRIMARY KEY (depid),
    UNIQUE u_manager (manager)
);


CREATE TABLE employees
(
    empid      INTEGER     NOT NULL,
    firstname  VARCHAR(50) NOT NULL,
    lastname   VARCHAR(50) NOT NULL,
    depid      INTEGER     NOT NULL,
    salary     NUMERIC(6,2),
    hiredate   DATE,
    CONSTRAINT pk_employees PRIMARY KEY (empid),
    INDEX i_depid (depid),
    CONSTRAINT fk_depid FOREIGN KEY (depid) REFERENCES departments(depid)
            ON DELETE RESTRICT ON UPDATE CASCADE
);

CREATE TABLE projects
(
    proid      INTEGER      NOT NULL,
    title      VARCHAR(120) NOT NULL,
    budget     NUMERIC(9,2) NOT NULL DEFAULT 0,
    startdate  DATE,
    enddate    DATE,
    progress   NUMERIC(3,1) NOT NULL DEFAULT 0,
    CONSTRAINT pk_projects PRIMARY KEY (proid)
);

CREATE TABLE workson
(
    empid      INTEGER      NOT NULL,
    proid      INTEGER      NOT NULL,
    CONSTRAINT pk_workson PRIMARY KEY (empid, proid),
    INDEX i_empid (empid),
    INDEX i_proid (proid),
    CONSTRAINT fk_empid FOREIGN KEY (empid) REFERENCES employees(empid)
            ON DELETE RESTRICT ON UPDATE CASCADE,
    CONSTRAINT fk_proid FOREIGN KEY (proid) REFERENCES projects(proid)
            ON DELETE RESTRICT ON UPDATE CASCADE
);

Συνδεθείτε για περισσότερες δυνατότητες αλληλεπίδρασης,
σχολιασμοί, εξωτερικοί σύνδεσμοι, βοήθεια, ψηφοφορίες, αρχεία, κτλ.

Creative Commons License
Εκπαιδευτικό υλικό από τον Αθανάσιο Σταυρακούδη σας παρέχετε κάτω από την άδεια Creative Commons Attribution-NonCommercial-ShareAlike 4.0 License.
Σας παρακαλώ να ενημερωθείτε για κάποιους επιπλέον περιορισμούς
http://stavrakoudis.econ.uoi.gr/stavrakoudis/?iid=401.