CREATE TRIGGER SET QUANT ON STUDENT FOR -
DECLARE @ SSTUD INT;
DECLARE @SGR CHAR(4); - SET (SET @STUD=) SELECT)
SELECT @SGR=SGROUP FROM INSERTED;
INSERTED/ DELETED . , , . .. .
SELECT @SSTUD =COUNT(SNUM) FROM STUDENT
WHERE SGROUP=SGR;
UPDATE SGROUP SET QUANT=SSTUD
WHERE SGROUP=@SGR;
STUDENT
CREATE TRIGGER ins_prot
ON k_protokol FOR INSERT
AS
DECLARE @s_new NUMERIC(9,2),
@kolvo NUMERIC(6),
@bill_num NUMERIC(6)
SELECT @kolvo=kolvo FROM Inserted
IF @kolvo>0
BEGIN
SELECT @s_new=p.price_sum, @bill_num=bill_num
FROM k_price p, Inserted i
WHERE p.price_num=i.price_num
IF @s_new!=0
UPDATE k_bill
SET bill_sum=bill_sum+@s_new*@kolvo
WHERE k_bill.bill_num=@bill_num
END
SQL , . . . , , .
CTEATE PROC _
[ { @parameter [{IN|OUT} ] data_type}]
AS BEGIN
SQL_statements
END
@parameter , ..
data_type 1 ,
:
EXEC _ (parameter-1,,)
57. .
,
: , , (- , - , -), ( , ), .
: , , - , ,
. , , :
. . : . .
|
|
- , .
.
, -.
, , . -.
, (), .
(NZ).
. :
1. .
2. .
, F1 F2, , F1 F2. F1 , F2 . .
: . . , . , . , .
. , . , . , , . .
.
( ). , , , , .
, .. . , , ; .
|
|
:
(tid), .
. , . "" , ( ) "" . , .
, . , , . \
. .
, . , .
.
.
: , .
, ( ) . ,
58.
, , (,b), - , b- .
. , (, ). , . .
.
, . ( ) . , .
, . .
59. B-
B- - . , . B- , .. (). .
|
|
:
(1) <= (2) <=... <= (n);
Nm k (m) <= k <= (m+1).
:
:
(1) < (2) <... < (t);
(r) - (tid), (r);
- .
B- - , , , n , m logn(m), logn n. n ( ), , .
:
. , .
. , , , .
, . , .
, . , , , .
, ,. .
B-. , , .. .
:
. , .
, .
, , , , , .
, .. , .
, - .
, . , .
. :
|
|
, .. , , ;
, .. ;
3--2, .. .
60.
(-).
. - , , -
(-), . .
, , , . - . ( ) . .
- - . -.
. -, , . , .
, B- . - , B-.
61.
.
, :
1. ,
2.
. .
:
1.
2. , 1-
3. . , .
: - .
.
: . (. ) .
- (v, p), v- F 1 , F 2 F n, p- v.
, , () . , . , , .
. - , ).
62.
, , . . .
|
|
, . , . , .
. . , , . .
MySQL :
, WHERE, , .
MIN() MAX().
ORDER BY GROUP BY.
, .
63. CREATE [ UNIQUE | FULLTEXT | SPATIAL ]INDEX index_name [ USING = index_type ] ON table_name (index_columns)CREATE INDEX PRIMARY KEY, ALTER TABLE.
ALTER TABLE table_name ADD PRIMARY KEY (index_columns)ALTER TABLE table_name ADD INDEX [index_name] (index_columns)ALTER TABLE table_name ADD FULLTEXT [KEY | INDEX] [index_name] (index_columns)ALTER TABLE table_name ADD UNIQUE (index_name) (index_columns)ALTER TABLE table_name ADD SPATIAL [KEY | INDEX] [index_name] (index_columns). , ALTER TABLE :
ALTER TABLE table_name DROP [KEY | INDEX] index_nameALTER TABLE table_name DROP PRIMARY KEY DROP INDEX index_name ON table_nameDROP INDEX `PRIMARY` ON table_name
64.
( ), . , .. . :
1 , () ,
2_ - , , ;
3 - - , . . . - .4 , , , , , .
, , .
, . , .
.
65.
COMMIT , ,
ROLLBACK ,
SAVEPOINT , ,
~ COMMIT ,
~ROLLBACK .
SQL Begin TRANSACTION - .
, . , , , ROLLBACK ( I ).
:
;
(SQL-) :
(, , );
, ( );
"" "" ;
;
(COMMIT).
TRL ID =
TRX NUM =
PTR =
66.
:
1. - .
2.
3. , . , ( ),
4. . . . .
1. . . . , .
- -:
1) . ., . .
2) -, . , , .
3) - . - .
4) . -, ROLLBACK . . , .
2. . . - , . ROLLBACK
:
- // -
4) ROLLBACK . . . - . ( )
67
. - . .
:
1.
2 2 , . . 1 -
2.
2 1 , 2 .
3.
2 2 - , 1 (2 )
(scheduler) , . , . - FIFO
68. . . . 64
(lock) SQL . , 2 , 1. ; .
, .
.
, .