Банки и базы данных. Основы работы с MS Access. Часть 2 (для разработчиков): Учебное пособие

Учебное пособие предназначено для дисциплины ОПД.Ф.14 ''Банки и базы данных'' для специальности 2302

249 93 681KB

Russian Pages 56 Year 2005

Report DMCA / Copyright

DOWNLOAD PDF FILE

Recommend Papers

Банки и базы данных. Основы работы с MS Access. Часть 2 (для разработчиков): Учебное пособие

  • 0 0 0
  • Like this paper and download? You can publish your own PDF file online for free in a few minutes! Sign Up
File loading please wait...
Citation preview

,

. .

, . .

. MS Access. )

2(

2005

681.3

. .,

. .

2(

. ).

:

. . . .

MS Access.

.– , . . ., , . . .,

., 2005. - 57 .

,

.

.

,

. .14 “ ” »,

230202 – «

. 1 (

)

, MS Access. ,

-

,

.

©

-

, 2005 © , 2005 ©

. .,

. ., 2005

................................................................................................................ 4 1. SQL.................................................................................................... 5 1.1. SQL ......................... 6 1.2. SQL ........................................................... 12 2. .................................................... 22 2.1. « » ................................................................ 23 2.2. ........................................................... 32 2.3. ..................................................................................... 34 1. ............................................................. 37 2. ........................................................... 41 1. SQL ( 1, ) ................................................................................ 41 2. SQL ( 2, ) ............................................................. 43 3. ............................................ 48 ............................................................................................................ 53

3

MS Access. , .

-

: • •



(

• •

SQL; SQL ; SQL) MS Access; ,

,

MS Access; (

,

). [1].

,

.

,

, .

4

-

1. SQL

SQL

Structured Query Language (

).

SQL

-

«

».

, . -

, SQL. SQL

,

.

, «

-

» SQL

, ,

-

. [6] ( ),

.

Access

SQL (Access «

-

»).

,

, SQL. cess SQL.



.

,

SQL

Ac-

,

– SQL

,

-

SQL

-

. «

»

.

. 1.1

, ,



SQL. , SQL.

SQL »

«

« »

. «

(

,

, SQL Oracle

».

Microsoft SQL Server). SQL , « 5

, » SQL.

-

. 1.1. 1.1. SQL

SQL-

SELECT.

. -

SQL. SELECT SELECT < FROM
>; –

( SELECT FROM

(

),

) 1.1.

.

,

,

; :

6

: «

«

», «

», «

»

». 1.2.

SELECT * FROM

; :

(«*»)

«

»,

-

,

. ,

SELECT FROM.

1.3. SELECT 123, “qwerty”, Date(); ,

3 SELECT

( ,



,

).

FROM, (

, -

). (

).

1.4.

,

.

.

SELECT FROM

,

,

.

; . «

«

»

»

7

, «

( »).

«FROM» «INNER JOIN» «INNER JOIN» ON < > . SELECT . , FROM INNER JOIN ON . =

«,» (

) .

.

. .

; ,

.

• INNER JOIN (

• LEFT JOIN (

. ). ,

. ).

. • RIGHT JOIN ( ,

. ). .

,

-

. .

[1], . 8

,

, «INNER JOIN». 1.5. «LEFT JOIN». SELECT . , FROM LEFT JOIN ON . =

(

1.4)

. .

; :

« « (

»,

».

«Null»

). ,

, .

-

.

,

«

»

,

. -

,

1.6. , ,

. (

) SELECT FROM ON GROUP BY

«

. , Count( LEFT JOIN . = . ;

.

». )

. ,

-

. GROUP BY .

, , .

, GROUP BY,

. :

9

SELECT,

-

(

1.7. . ,

)

-

.

, .

.

-

. . , Count( LEFT JOIN . = . . ASC; :

SELECT FROM ON GROUP BY ORDER BY

.

) AS

.

(

AS

)

.

,

. -

, Access ).

( , (

),

-

FROM. .

, )

)

. . ORDER BY ,

DESC ( ASC.

-

ORDER BY. . (

– ASC ( ,

). Access (

-

. ,

,

,

SQL, SQL,

).

10

,

,

,

. ,

. .

SELECT -

,

. ,



[5, 9 – 11, 13]. ( ,

( «

»

– ). )– FROM

. ON

(

-

).

WHERE


-

SELECT HAVING.

-

FROM .

, WHERE. HAVING


GROUP BY HAVING

GROUP BY, -

WHERE. 1.8.

-

. SELECT . , Count( . FROM LEFT JOIN ON . = . WHERE Left( . ,1) = " " AND GROUP BY . 11

) AS

.

>1

HAVING Count( ORDER BY

.

)>0

.

ASC; (

WHERE) « » «1».

, ,

-

. (

,

-

«0»), ,

,

WHERE.

-

,

. , .

LEFT -

, ,

JOIN . ,

LEFT JOIN

INNER JOIN. 1.2.

SQL SELECT _

SELECT [DISTINCT] [INTO _ ] [FROM _ [WHERE ] [GROUP BY _ ] [HAVING ] [UNION [ALL] SELECT …] [ORDER BY _ ]

|*

]

. DISTINCT

, (

).

. -

. FROM.

SELECT ,

FROM

-

. 1.9. .

SELECT FROM …

,

.

, , .

12

-

,

«

»

.

SQL –

,

«

» («

-

»)

. 1.10 ( . , 2. , (SELECT * FROM

SELECT FROM …

«AS»



).

) AS

(

2 ),

-

, «

»

,

. . . ,

-

. ,

,

. 1.11 (

,

-

). SELECT FROM

. , 2. , (SELECT * FROM (SELECT * FROM ) ) AS 2

… «SELECT»,

,

, («FROM», «WHERE», «GROUP BY», «ORDER BY» …). . WHERE. , WHERE, 1.12. ( , , , SELECT , FROM WHERE > (SELECT AVG( ORDER BY ;

.

,

) , :

) FROM

)

13

-

«

»,

.

, «

-

».

,

,

, . ,

1.13.

-

: SELECT , FROM WHERE = (SELECT MAX( ORDER BY ;

(

)

ANY (

-

) FROM

)

). ALL

, , ANY ,

1.14. ,

SELECT FROM WHERE (SELECT ORDER BY

>= ALL FROM ;

. :

) ALL (

-

ANY, ),

( 1.15. (

ALL -

).

Ы

, ):

- ,

SELECT , FROM WHERE > ANY (SELECT FROM ORDER BY ; 1.16. SELECT , FROM WHERE

(SELECT MIN( ) FROM ORDER BY ;

) ,

ANY:

)

IN NOT IN.

IN

, ( .

NOT IN

14

).

-

:

1.17. ,

SELECT FROM WHERE NOT IN ( SELECT FROM WHERE INTO
,

-

. 1.20. SELECT FROM

,

INTO

; «

»

-

:

TRANSFORM … PIVOT. ( . [1]). TRANSFORM < > SELECT < > FROM < > … GROUP BY < > PIVOT < >; TRANSFORM … PIVOT , . GROUP BY. , . , TRANSFORM, . .

17

:

SELECT,

SQL. -

PIVOT,

-

1.21. TRANSFORM Count( SELECT . FROM (SELECT . . FROM , ) AS LEFT JOIN ON ( . ( . GROUP BY . PIVOT .

.

) AS

,

.

,

,

.

= =

.

) AND

.

)

; :



,

,



-

– . [1] ,

, -

,

,

,

,

-

. , «

):

18

»

«

»( . .

-

-

LEFT JOIN «

»,

(

)

Count(). , (

-

,

,

-

).

SQL. -

, -

,

SQL,

-

,

, . .

INSERT INTO. INSERT INTO _ [( _ [, _ …])] VALUES ( [, …]) , . INSERT INTO _ [( _ [, _ …])] SELECT … , 1.22. INSERT INTO ( , VALUES (" ", 4, 1987);

SELECT.

,

)

DELETE FROM DELETE FROM _ [WHERE ] .

WHERE

1.23. DELETE FROM WHERE

UPDATE SET _ [, _ [WHERE

="

.

";

UPDATE _ =

|(SELECT…) |(SELECT…)…]

= ]

, . . 19

-

1.24 (



).

UPDATE SET = 1200 WHERE < 1200; CREATE TABLE. . : CREATE TABLE _ ( _ _ [( [, _ _ [( )

)] )] …] ,

,

.

1.25. ( ) CREATE TABLE 1 COUNTER, 2 INTEGER, 3 CHAR );

«

1», « (



« «

», 3».

,

-

.

. ,

-

. – . : CREATE TABLE _ ( _ [( )] [ ] [, _ [( )] [ ] …] [,PRIMARY KEY ( _ [, _ …])] [,FOREIGN KEY ( _ [, _ …]) REFERENCES _ [( _ [, _ ])] [ON UPDATE CASCADE | SET NULL] [ON DELETE CASCADE | SET NULL] ] ) , • NULL NOT NULL .

20

:

• UNIQUE

.

• PRIMARY KEY

. .

• REFERENCES _ [( _ [ON UPDATE CASCADE | SET NULL] [ON DELETE CASCADE | SET NULL]

, (

. [1]).

)]

, . ,

,

,

,

, ON UPDATE CASCADE SET NULL. REFERENCES

. ON DELETE , (

ON UPDATE

»)

-

ON DELETE (« », «

», «

. [1]).

-

.

1.26. CREATE TABLE ( 1 COUNTER PRIMARY KEY, 2 INTEGER UNIQUE NOT NULL, 3 CHAR NOT NULL ); • PRIMARY

: KEY

(

_

[,

_

…]) ,

[,

_

…]) …])] NULL] NULL] . , -

. • FOREIGN KEY ( REFERENCES _ [ON UPDATE [ON DELETE , REFERENCES

. _ [( _ CASCADE CASCADE

[, | | ,

_ SET SET

. ,

1.27. : CREATE TABLE ( COUNTER PRIMARY KEY, CHAR NOT NULL, CHAR NOT NULL, 21

-

CHAR NOT NULL ); CREATE TABLE ( COUNTER PRIMARY KEY, CHAR NOT NULL ); CREATE TABLE ( INTEGER REFERENCES INTEGER REFERENCES PRIMARY KEY ( , ) ); ,

( (

), ),

[1]:

DROP TABLE DROP TABLE _ . 2. -

Access . , 1.2

Access,

[1]. –

. ,

-

. ,

,

-

, .





: (

)

.

,

. (

,

)

. , . . 22

,

, •

,

.

– (

)

.

, •

-

-

. – ,

. .



: . .



«

».

-

. , . . ,

. . 2.1.

«



-

»

,

.

:

,

,

,

-

. – :

,

,

.

,

,

-

.

,

. .

– )

(

( ).

. Э



,

-

. . ,

. .

23

2.1. –« :

»

«

»

:

15.05.1967 40 03 012345 123-45-67, 987-65-43 « »

,

-

. ,

.

.

,

,

. .



.

«

»

«

-

».



«

»

»

« ,

,

.

, ,

. .

,

: « ».

,

, . ,

,

-

-

, . ,

,

, , ,

– ,

,

-

. – .

, ,

,

, . -

.

. (



»), . 24

. ,

. ,

-

. .

(

). .

(

)

. ,

,

«

» .

«

. -

» (

). • • •

: - - - , . - -

«

», . «

- -

»–

-

, .



« «

- -

»

«

».

»

. »

«

, «

( ).

- -

» – (

. -

),

.

- -

: ,

,

. :

1 0 «

). - .

(

), 1

(

»-

-

25

« (

- -

»

-

).



.

-

. « -

». ( .

-

). «En-

ER. tity-Relationship» («

-

»). –

.

, -

. . . 2.1

. 2.2. »

«



.

,

«*»

-

( ,

).

*

*

. 2.1. Д ER-

-

. 2.3. -«

. 2.2 . ».

, «1»

«N»

26

,

1

N

*

1 N

*

. 2.2.

.

-

,

. ,

,

,

. ( 1

. 2.3).

N

. 2.3. « »(

-

-

«

».

. 2.4)

- -

.

1

N

. 2.4.

N «

-

2 » «

.

27

»

1

N

N

1

1

2 . 2.5.

,

-

,

. ,

-

.

. , ,

(

). «

2.4. « »,

», ,

N

*

N

.

*

. .

-

.

, . . ,

. ,

. –

*

1

«

N

N

* *

28

1

».

*

«

»

,

-

.

«

-

»

«

»

«

».

. , .

-

1.

.

, ,

-

,

. . . «

» .

2.

. .

. ,

-

,

( ).

3.

( .

)

-

– . 4.

. ,

. . –

.

5.

. , .

-

, . .

2.5. 1. . 2.6.

,

29

.

К

__________ ______

______ я

. 1 2 3 …

. 1 2 3 … К

№______ А К

.

1 2 ___________3 … . 2.6.

2. (

. 2.7).

. 2.7. 3.

.2.8.

.

30

N

1

1

N

1

N

1

N

1

N

. 2.8. 4.

. 2.9

.

*

*

*

* * *

*ID

*

. 2.9. 5. «

– »

«

»(

. 2.10).

1

*

*ID

N N

1

. 2.10.

*ID –

31

,

,

,

-

,

(

,

,

. .). 2.2. [1]. . – « (

»-

)

(

-

).

(

). .



, .

. .

.



: . ,



,

:

.Ф . ,

. ,

.



: .



,

. . ,



-

. . –

, .

-

. -

. – .



(

32

) .

, -

(Null). ,

. ,

,

.



,

. . .

(



)

,

.

, .

,

. –

Null (

),

.

-

. , . , «

«

: »,

-

»,

. (

)

. –

.

,

-



-

, : (

1,

2,

3,

4, …).

,

, ,

,

.

. -

. , . .

(

). -

. «

- -

» ( ) ,

. «

- -

», ,

.

33

-

«

« ».

- -

- -

»

2.3. –

.

, ,

( .

)

-

,

.

, . .

-

, . – (

,

). . 1 2 3

,

,

,

. (1 –

). .

,

1

,

. «

».

-

. (



)

. (2 1

).

,

2

,

, . 34

B

,

A (

,

A,

-

B). .

2.6. : ( , Æ

,

,

,

-

,

) :

,

,

, :

-

. 2.7. (

. ,

2 , - «

: ,

, » (

,

»

) «

-

). :

Æ

,

,

,

. ( . .

,

,

-

). .

(

),

,

(

)« .

, (3

: Æ

Æ

»

).

,

,

3 .

2 A Æ B B Æ C, A Æ C (C 2.8. 3 . ( , , 2.7, , ( 2NF ,

.

A

).

,

,

) -

). .

-

, ,

, •

Æ

-

.

-

:

Æ . -

) [8 – 13].

( ,

-

(

, ). 35



) [8, 9, 11 – 13].

(4 .

-

, A



B (5



-

B C

C, . ) [8, 11, 13]. . (

) [12]. .

-

, . , ([8 – 13]). .

36

-

1. ,

-

Access. [2 – 4]. .1.1.

Access

.

Char

.

). . False.

: True

0

Short

-32768

255.

(

+32767. -2147483648

2147483647).

Single Double, Number

1

(

Byte

Integer, Int, Long

-

.

Text, Memo Logical

255

-3.4x10

38

-1.8x10

308

. 3.4x1038. .

308

1.8x10 .

Date, Time, DateTime

. .

Currency

-

11

4 .

Counter OLEObject

. OLE-

, OLE.

– 2

Binary

, .

37

,

.

2 .

-

.1.2.

Sum

.

Avg

.

Min

.

Max

. .

Count

-

«*».

First Last .1.3.

Left(

, n)

Right(

n

, n)

Mid( n2)

, n1,

InStr(

1,

.

n

.

n2

,

n1. ,

2)

-

1.

Ltrim(

)

Rtrim(

)

Trim(

2 . .

)

.

.1.4.

Date()

.

Now() DateDiff( 1, 2)

. ,

-

. «

» : 38

“yyyy” – “n” – DateAdd( , ) Year(

Day(

,

,

.

)

Month(

, “q” – , “m” – , “y” – , “d” – , “w” – , “h” – , , “s” – .

-

-

-

-

. )

. -

)

. .1.5.

Str( Val( Int(

-

) ) ) .1.6.

+

,

* / =

> < >=

39