Karpova_bazy_dannyh
.pdf
243












, 














. 





,







1 







, 















R1,











, 





2, 














-

























, 


















.



























, 





-














.

































,



, 





























-

.
|
. |
|
|
: |
, |
. |
- |
, |
|
( |
, |















, 
























). 




















S (


-

) 
X (




). 





















-

















: 













S 
X 

































IS, IX 
SIX.
IS (Inteated for Shared lock, 















) 



















0 



















- 


0 










. 


, 












|
R |
|
|
IS ( |
- |
|
|
). |
|
|
|
IX (Indented for eXclusive lock, |
|
) |
|
||
|
|
0 |
|
|
- |
|
0 |
. |
, |
|
- |
|
|
R |
|
IX ( |
|
|
|
|
). |
|
|
SIX (Shared Indented for eXclusive lock, |
|
, |
- |
||
|
|
|
) |
|
- |
|
|
0 |
|
|
- |
|
|
|
- |
|
- |
|
. |
, |
|
|
- |
|
|
|
|
, |
- |
|
|
|
SIX ( |
|
|
|
IS). |
|
|
|
|
|
|
|
|
. |
|
|
|
, |
|
|
|
( . |
. 11.2). |
|
|
|
|
244 

11. 







|
11.2. |
|
|
|
|
|
. |
|
|
|
|
|
|
X |
|
S |
|
IX |
|
IS |
SIX |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
S |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
IX |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
IS |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SIX |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
: |
||
1. |
|
|
|
|
S- |
|
|
, |
|
|
|
|
|
|
IS |
, |
|
|
|
, |
|||










.
2.














-










, 




-



I
-6


























, 









.
|
L1 |
L2 |
|
, |
( |
) |
- |
|
L2 |
( . |
. 11.2) |
|
L1 |
. |
|
|
|
. 11.12. |
|
X
SIX
S |
IX |
|
|
IS

. 11.12. 









































-


, 






, 













(
, 


, 




S
).



, 














, 










-






.
|
|
|
245 |
|
|
|
. |
|
|
|
|
. |
|
|
|
|
, |
|
|
, |
, |
, |
- |
|
, |
|
|
- |
|



, 


























.
|
|
|
|
|
|
- |
( |
|
, |
, |
|
, |
- |
|
|
|
|
|
||
|
|
), |
|
|
|
|
S |
|
X. |
. |
|
|
- |
, |
, |
, |
SQL, |
|
|
, |
|
|
|
. |
, |
|
|
|
|
. |
|
, |
|
- |
|
|
|
|
|
|




, 






























. 



























, 




:

-


{







} 


.
: = , >, <. |
|
|
, |
( |
- |
), |
|
- |
( |
) |
|
. |
|
- |
|
|
, |
. |
|
, |












.
|
|
|
. |
R |
|
a1 , a2 ,..., an |
a1 , a2 ,..., an , |
a m1 , m2 ,..., mn |
|
|
|
n- |
( |
). |
R. |
- |
|
R |
|
|
|||
(m<=n). |
« |
» |
m- |
|
|
|
|
|
|
|
|


S-X, X-S,
-























, 


-



















.
















, 




, 












1 






(1<=
<=4)
(b=5), 




2 
-


(1<=
<=3)
(1<=b<=3), 












. 

: (n= 2).



, 





























,
-







.
246 |
11. |
|||
|
b |
|||
5 |
|
(1<=a<=4)&(b=5) |
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
4
3
2
(1<=a<=5) & (1<=b<=3)
1
a
1 |
2 |
3 |
4 |
5 |

. 11.13. 

|
|
, |
|
|
- |
, |
|
. |
|
( |
) |
: |
1 |
2, |
2. |
, |
1 |
|
|
|
|
|
t, |
. |
|
r |







(








).


















t 




1 











:
, |
|
|
|
, |
. |
- |
, 1 |
|
r |
|
. |
|
|
|
|
, |
1 |
|
. |
- |
|
|
, |
|
r |
|
|
|
|
, |
|
1 |
. |
|
1 |
|
, |
|
t(T) > t(T1) ( |
|
- |
« |
», |
1), |
|
1 |
. |
|
t(T) < t(T1) ( |
« |
» 1), |
1 |
|
|
- |
. |
|
|
|
|
|
|
, |
|
|
|
|
. |
|
, |
|
|
|
|
. |
|
|
|
247 |
, |
( |
|
). |
|
|
|
|
|
|
, |
- |
, |
, |
|





.


12 





SQL
SQL, |
5, |
- |
. |
, |
|
: |
|
- |
( |
). |
|








SQL 










:



































-






.



































-


, 






























-


.
SQL 























, 




|
. |
|
|
, |
|
, |
|
|
- |
, |
. |
|
|
- |
|
|
|
|
|
SQL |
, |
|
|
. |
|
, |
|
|
, |
|
, |
|
SQL |
- |
|
. |
|
|
|
|
|
, COBOL, PL/1, Pascal. |
|
|
|
SQL |
|
: |
|
|
SQL. |
SQL |
|
- |
|
SQL |
. |
|
- |
|
|
|
|
|
|
SQL, |
|
|
|
|
. |
|
|
|
|
(API |
application |
program interface). |
|
|
|
. |
, |
- |
|
SQL |
|
|
. |
|
|
|
|
. |
249













SQL 












5 

(
.

. 12.1).
Select F, J, K
FROM A, B
WHERE A.F=B.F
AND J>400
AND K=
10g

1


SQL

2













SQL

3









SQL

4















SQL



SQL

5

. 12.1. 












SQL
1. 


























SQL.






SQL-


pa 
















.
2. |
SQL: |
, |
, |




. 


















.
3. 



















.





-































. 














.
4. |
|
, |
3. |
|
|
|
. |
||
|
|
|
|
|
5. |
, |
, |
( |
) |
|
|
, |
SQL. |
|
250 |
|
|
|
12. |
SQL |
|
6. |
, |
, |
|
. |
|
|
|
|
|
|
|
||
. |
|
, |
- |
, |
|
- |
|
|
|
||||
|
, |
. |
, |
|
|
- |
, |
|
, |
|
- |
||
|
|
|
|
|||
|
, |
|
|
|
|
, |
|
, |
|
|
|
|
|
|
. |
. |
|
|
|
- |
|
|
|
|
|
|
|
, |
( |
) |
|
|
|
- |
|
|
|
|
. |
, |
- |
|
|
, |
|
|
|
- |
|
. |
|
SQL |
, |
, |
. |
|
|
. |
|
|



SQL












SQL 


















-












:
SQL 



























-








. 






















SQL, SQL.










SQL 





















-






.










SQL 







SQL-









-













.





(NULL) 









-


.































SQL 

















, 
















SQL.





SQL. 








(SELECT) 








.
|
SELECT |
, |
- |
|
. |
SQL |
|
|
, |
|
- |
. |
SELECT |
|
|
SQL |
251 |
, |
. |
SQL 







2 
:










, 

























-

. 






















.
. |
|
, |
- |
|
|
||
. |
, |
, |
- |
|
|
. |
|
|
|
SQL |
- |








SQL, 















:
SELECT [{ALL | DISTINCT}] <











>
INTO <












>
FROM <








>
[WHERE <











>]
|
, |
SELECT |
|
, |
|
|
. |
|
- |
|
|
, |
|
|
|
|
, |
|
- |
|
. |
|
|
- |
|
|
|
. |
, |
« |
» |
READERS ( |
), |
- |
|
|
: |
|
|
|
CREATE TABLE READERS |
|
|
|
(
R E A D E R _ 1 D S m a l l i n t ( 4 ) P R I M A R Y K A Y , FIRST_NAME char (30) NOT NULL,
LASTJIAME char (30) NOT NULL, ADRES char (50), HOME_PH0N char (12),
WORK_PHQN char (12),
BIRTH_DAY date 
CK (Date Diff (year. Get Date (), BIRTH_DAY) >=17)
); |
|
|
|
|
. |
|
MS SQL SERVER |
7.0, |
Transact SQL. |
|
|
Transact SQL |
|
@. |
Transact SQL |
|
/* |
*/. |
|
DECLARE @READER_ID int
DECLARE @FIRS_NAME char (
). © LAST_NAME char (30). @
DR
5 Char (50)
DECLARE ®HOME_PHON
h
r (12). @WORK_
0
Char (12)
/* 




















*/
252 |
12. |
SQL |
SET @READER_1D = 4
/* 





































*/
SELECT READERS, FIRST_NAME. READERS LAST_NAME. READERS.ADRES,
READERS HOME_PHON, READERS WORK_PHON
INTO @FIRS_NAME. @LAST_NAME. @ADRES. @HOME_PHON. @WORK_PHON.
FROM READERS
WHERE READERS READER_ID = @READER_1D



























, 












READERS, 








. 

















, 










Transact SQL 











-
















@. 



, 









-










, 




, 











. 
















, 
























.
























. 








® READER_ID 

















. 








4, 


























, 






- 












WHERE.



























, 





















, 

























READERS, 






.






, 







.













. 



























SQL.
1. |
DECLARE CURSOR |
|
, |
|
|
, |
. |
|
|
. |
|
|
|
|
|
|
|
|
. |
2. |
OPEN |
|
, |
|
, |
|
. |
|
OPEN |
( |
) |
|
|
. |
|
3. |
FETCH |
|
- |
|
. |
|
|
FETCH 




















, 



-
