WHERE 1 <
(SELECT COUNT (*)
FROM Customers b
WHERE a.snum = b.snum);
Глава 21
1. #1 - не модифицируемый, потому что он использует DISTINCT.
#2 - не модифицируемый, потому что он использует обьединение,
агрегатную функцию, и GROUP BY.
#3 - не модифицируемый, потому что он основывается на #1, который
сам по себе не модифицируемый.
CREATE VIEW Commissions
AS SELECT snum, comm
FROM Salespeople
WHERE comm BETWEEN .10 AND .20
WITH CHECK OPTION;
CREATE TABLE Orders
(onum integer NOT NULL PRIMARY KEY,
Amt decimal,
odate date DEFAULT VALUE = CURDATE,
Snum integer,
cnum integer);
CREATE VIEW Entryorders
AS SELECT onum, amt, snum, cnum
FROM Orders;
Глава 22
1. GRANT UPDATE (rating) ON Customers TO Janet;
2. GRANT SELECT ON Orders TO Stephen WITH GRANT OPTION;
3. REVOKE INSERT ON Salespeople FROM Claire;
4. Шаг 1: CREATE VIEW Jerrysview
AS SELECT *
FROM Customers
WHERE rating BETWEEN 100 AND 500
WITH CHECK OPTION;
Шаг 2:GRANT INSERT, UPDATE ON Jerrysview TO Jerry;
5.Шаг 1: CREATE VIEW Janetsview
AS SELECT *
FROM Customers
WHERE rating =
(SELECT MIN (rating)
FROM Customers);
Шаг 2: GRANT SELECT ON Janetsview TO Janet;
Глава 23
CREATE DBSPACE Myspace
(pctindex 15,
pctfree 40);
2. CREATE SYNONYM Orders FOR Diane.Orders;
3.Они должны быть откатаны обратно назад.
4.Блокировка взаимоисключающего доступа.
5.Толко чтение
SELECT a.tname, a.owner, b.cname, b.datatype