, . SQL , . :
, , ;
, , , .
- , - . , ( ), . . ( ). , , , ( ) , ..
GRANT (),
GRANT ON TO ;
"" - , , , ALL PRIVILEGES ( ); "" - , , ( , , , ..); "" - , , , PUBLIC ().
() SELECT, DELETE, INSERT UPDATE [()], ( , SELECT), , ( ). ,
GRANT SELECT, UPDATE () ON TO cook;
, cook, , .
USER_1 - USER_2, . REVOKE (), GRANT:
REVOKE ON FROM ;
, cook :
|
|
REVOKE UPDATE () ON FROM cook;
6.2.
.4.4.4 , = 13 = 20 :
UPDATE UPDATE
SET = 20 SET = 20
WHERE = 13; WHERE = 13;
UPDATE UPDATE
SET = 20 SET = 20
WHERE = 13; WHERE = 13;
, , , . , . , , . . , .. - ( , ).
. , - , , .
, SQL-, , SQL- , .. . , , ( ) :
COMMIT (), ("");
ROLLBACK (), .
, SQL-, " ", COMMIT ROLLBACK . , COMMIT ( AUTOCOMMIT, COMMIT SQL-) ROLLBACK ( ).
, , , COMMIT (ROLLEBACK), .. SQL- .
, .
, . , . , ( , , ), , - , . , , , . , , , , , .
|
|
. , . SQL, , .
6.3.
, SQL, , . , . SQL, , .
, SQL. , (, ), SQL. , , SQL, () .
:
- SQL SELECT INTO SELECT, WHERE SELECT, UPDATE DELETE, SET UPDATE, VALUES INSERT , , SELECT, WHERE SET, VALUES;
- , , , ;
- , ( SQL , , ".", , ).
SQL SQLCODE ( ). SQLCODE , . , , . , +100 , , . , , . SQL SQLCODE , , . SQL, ).
"" SELECT , SELECT, , , , (). SQL . . , , , . , .
|
|
- , SELECT,
SELECT [[ALL] | DISTINCT]{ * | _select [,_select]...}
INTO [[INDICATOR] _]
[, [[INDICATOR] _]]...
FROM _ | []
[,_ | []]...
[WHERE ]
[GROUP BY [HAVING ]];
_select - :
[.]* | [.] | SQL_ |
| () | _
, (.2.1) INTO _select . WHERE HAVING.
. _:
SELECT SUM(_)
INTO _
FROM ;
( -) SQLCODE .
SELECT , _
INTO , _
FROM ,
WHERE . = .
AND IN
(SELECT
FROM
WHERE = ' ');
_, , SQLCODE +100, .
,
SELECT , _
INTO , _
FROM ,
WHERE . = .;
, , SELECT , SQLCODE . _ , .. , .
SELECT INDICATOR . SQLCODE NULL- SELECT . , _ 9 NULL,
SELECT , _,
INTO INDICATOR 1, _ INDICATOR 2,
INDICATOR 3
FROM
WHERE = 9;
: SQLCODE = 0, = 9, 1 = 0, 2 = 3 = -1, _ NULL.
. .
, :
UPDATE
SET = +.
WHERE IN
(SELECT C
FROM
WHERE = '');
, :
DELETE
FROM
WHERE =.;
, , , , , :
INSERT
INTO
(, , , )
VALUES (.,.,.,.);
, , - ( , ..).
|
|
DECLARE _ CURSOR
FOR
. ( ), . ( , , .) ( ). . ORDER BY, ( ).
DECLARE CURSOR SQL (DELETE), (UPDATE) SELECT , FETCH (). , . OPEN (OPEN _).
FETCH , , , INTO, . SQLCODE +100.
FETCH _
INTO [[INDICATOR] _]
{, [[INDICATOR] _]}...
FETCH , SQLCODE. 0 +100 .
, , . (CLOSE _) (DROP CURSOR _).
, . COMMENT ON ( ), CONNECT ( ), DISCONNECT ( ), WHENEVER ( SQL) , .
- . DB2. - .: , 1988. - 320 .
- .. . . - .: , 1994. - 90 .
- . . -.: , 1987. - 608 .
- . . -.: , 1990. - 386 .