.


:




:

































 

 

 

 





, . , cnum snum , , , , , , . , UNIQUE , . cnum PRIMARY KEY, , , , cnum - .

, , , , .

, ( ) , . , snum cnum , .

, snum , , , . cnum, , , snum ( ). , , , .

, , ( ), . , (denormalization), , . , , .

DML? , , : , INSERT UPDATE . (NULL) , , NULL , NOT NULL. (DELETE) , .

, , ANSI, , : , , . , , , . , , , . , , , . , , , . , , (.. ), () ( 22).

, ANSI, . , :

( ANSI), , .

, .

, NULL (, NULL ), .

, . INSERT, , . , . , , . , , UPDATE DELETE. (update effects) (delete effects), , , UPDATE DELETE . , , :

(RESTRICTED) ,

(CASCADES) ,

(NULL) .

ANSI , , . , . , , , . , , .

, , snum , ( , ; , : ). , . , , , . , , - . UPDATE , DELETE .

CREATE TABLE Customers (
cnum integer NOT NULL PRIMARY KEY,
cname char(10) NOT NULL,
city char(10),
rating integer,
snum integer REFERENCES Salespeople,
UPDATE OF Salespeople CASCADES,
DELETE OF Salespeople RESTRICTED);

Peel , , snum Hoffman Clemens . , snum Peel 1009, Hoffman Clemens .

(NULL) . , , . , , . , . , .

CREATE TABLE Orders (
onum integer NOT NULL PRIMARY KEY,
amt decimal,
odate date NOT NULL
cnum integer NOT NULL REFERENCES Customers
snum integer REFERENCES Salespeople,
UPDATE OF Customers CASCADES,
DELETE OF Customers CASCADES,
UPDATE OF Salespeople CASCADES,
DELETE OF Salespeople NULLS);

, DELETE , NOT NULL snum.

,

, FOREIGN KEY , . , . , Employees manager (). , .

, , , . , ( empno), , , , :

CREATE TABLE Employees (
empno integer NOT NULL PRIMARY KEY,
name char(10) NOT NULL UNIOUE,
manager integer REFERENCES Employees);

, . :

 

EMPNO NAME MANAGER
  Terrence  
  Atali NULL
  McKenna  
  Collier  

 

, ( Atali), . Atali, , NULL. . , , NULL. , ?

, , . , , , . , , , , CREATE TABLE:

CREATE TABLE Salespeople (
snum integer NOT NULL PRIMARY KEY,
sname char(10) NOT NULL,
city char(10),
comm declmal,
cnum integer REFERENCES Customers);

CREATE TABLE Customers (
cnum integer NOT NULL PRIMARY KEY,
cname char(10) NOT NULL,
city char(10),
rating integer,
snum integer REFERENCES Salespeople);

.

SQL , . , , , . , SQL , , . , , . , . , , , , , . , , , , ( , , 22 23).

. , . , , , . , , , , ; . (PRIMARY KEY) (UNIQUE) , , . , , . , , , NULL , UPDATE DELETE.

CREATE TABLE. CREATE. 20 , , . , , , .

SQL

1. Cityorders. onum, amt, snum , cnum city, , . num Cityorders. Cityorders . , .

2. . : prev, , onum . . cnum , .

(. A .)


(VIEW) , . , . , , .

, , . , , , , .

?

, , . , . . , . DML , .

, ( , , ), . , , . .

CREATE VIEW

CREATE VIEW. CREATE VIEW ( ), , , AS (), , :

CREATE VIEW Londonstaff
AS SELECT *
FROM Salespeople
WHERE city = 'London';

, Londonstaff. , . , , , , , . ( 20.1):

Select *
FROM Londonstaff;

=============== SQL Execution Log ============
| SELECT * |
| FROM Londonstaff; |
| ==============================================|
| snum sname city comm |
| ------ ---------- ----------- ------- |
| 1001 Peel London 0.1200 |
| 1004 Motika London 0.1100 |
===============================================

20.1. Londonstaff

SQL (SELECT) (*) , , Londonstaff, .

, , . , 15, , Londonstaff, (, , ; , ). , , , , .

, , . , , .

. , . , , , ( 20.2)

CREATE VIEW Salesown
AS SELECT snum, sname, city
FROM Salespeople:

=============== SQL Execution Log ============
| SELECT * |
| FROM Salesown; |
| ==============================================|
| snum sname city |
| ------ ---------- ----------- |
| 1001 Peel London |
| 1002 Serres San Jose |
| 1004 Motika London |
| 1007 Rifkin Barcelona |
| 1003 Axelrod New York |
===============================================

20.2. Salesown

, , , , comm , , , .





:


: 2016-07-29; !; : 588 |


:

:

, .
==> ...

1552 - | 1391 -


© 2015-2024 lektsii.org - -

: 0.034 .