Top Banner
SQL
89

 · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?

Aug 20, 2018

Download

Documents

truonganh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�������

��������������

SQL����

��� �� ����

Page 2:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

@BD2?9A7D5<D4'����

• @BD2?9A7D5<D4– Relational Data BaseERDBF

• ��7D5<D4• ��>7A&�"�!7D5<D4• IBM Edger Frank “Ted” Codd���

– A Relational Model of Data for Large Shared Data Banks (1970)• IBM System R;C3018

– SEQUEL/�� à SQL

– 7D5(�'��&#�� 246=&#� �-,• ���'7D5

– RDB$(�7D5(���$���-���-,– �/6D:A%)��

• 7D5<D4� 246=– �&��-,7D5'� (�7D5<D4� 246=���

– @BD2?9A7D5<D4� 246=ERDBMSF

– 7D5'���. (����&*+�.-,• SQL G Structured Query Language• ������

1@BD2?9A7D5<D4'����NCSJ2018

Page 3:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

WjT`jQ"�PQVa<��

• NcJIiXkOj\j– Oj\j8NcJIiX;��2�1ED– ����7<PQVa��;*36/D

– Oj]QG��4DOj\j• WjT`jQ"�PQVa=,Oj\j-

– WjT`jQOj\j– IBM DB/2, Oracle, MS SQL/Server, MySQL, etc.

– WjT`jQ<Oj]QG��4DNcJIiX• Oj\j><'�=SQL7&FED• ��<NcJIiXS^XKLI

• ODBC:9+Mj_i:�#�G�0A<2�%�

• QTiYIgi– WjT`jQ<"�8��2�<_gRQ7&FED– �#<5@<[UXhjN( :92�':/– ��?5=���7<��;*36/D

• ^HJe��;BC+dIeTJa<��A.D!�$

dfjPbZeWjT`jQ<� �) 2NCSJ2018

Page 4:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�%��%������ ���

• ������#�$�%�%��

"%���!�%��%������ 3

TCP/IPSQL

DataBase ServerClient

NCSJ2018

Page 5:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�%��%������ ����

• WEB�%�%����– &��������������

"$%�!�#�%��%��� 4

HTTP

WEB SERVER(Application Server)

SQL

DataBase Server

Client

NCSJ2018

Page 6:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

ODBC

• ODBC : Open Data Base Connectivity– Microsoft���– Windows����

• Windows��&4%,4#� ��• �+0 4".3�&4%,4#!4*4��!-4'���������

– ODBC(/�*4• � ��&4%,4#����(/�*4���• &4%$4#������

024".)1&4%,4#����� 5NCSJ2018

Page 7:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

ODBC

• ODBC��������– Windows Vista��

�������� �������� 6NCSJ2018

Page 8:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

?L>8��47!

• !6�#– >EJ59@ICGL@

• >EJ M 3K;LA

• 9@ICGL@ M �3D:LJA

7IKL<HBJ?L>FL=6���"

21 � � �� ����

1))*))* & �% � *0/*(*(*

1))*))+ '� �� *0/+(+(+

1))*)), �� �% � *0/,(,(,

1))*))- $� �� *0/-(-(-

1))*)). �� �� � *0/.(.(.

>EJ

9@ICGL@

NCSJ2018

Page 9:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

+�XR[

• +�XR[B`% – R^QV^PB�*

• SWL] a �7�-B�B,�

• SWL]1F�K_<9<�G6=>3:!KQU[?/0• QU[ b \N^S

– R^QV^PB�)�• R^QV^PA��5I=/HR^Q2�)6=/H4?• _<B"A�7�BQU[K�;=/@/4?2��?@H• ��BQU[K(8H:DB��K�#M^?/0• �#M^C._<>E$�>E�J@/• �#M^B_<K�M^?8H

– R^Q��&'• R^QV^PA��5I=/HR^QK��8H:DB&'��

Z\^OYT[R^QV^PB���( 8NCSJ2018

Page 10:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

��(%+�%-$��

• %-$����–%-$� �–�������–�� �����–�����!���

• ��(%+�%-$��–����–����

*,-")&+%-$'-#����� 9NCSJ2018

Page 11:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

-���

• �/��#– jCI'V$N�U=DiCI'HMFOS

• <LDIZ^c3�9TS

– jCI'J ;�+EG7TKGRG1

– jCI'I��<S\`WeJ ;EG7TKGRG1• ��J�GBD1DPQ1

– �#%�IZ^cI,(JG1

• �/��#– jCI'kglHD0khlI�#J'kIZ^c2R'lH�MTD1G1Z^cV��:0�:1'V��<S

– 'kglJ ;�+EG7TKGRG1

– 'kglI��<S\`WeJ ;EG7TKGRG1

• ��J�GBD1DPQ1

• �*/��#– jCI'I ;�VPB@&A7V��:D0�:1'VC5S

– jCI'J ;�+EG7TKGRG1

– jCI'I��<S\`WeJ ;EG7TKGRG1• ��J�GBD1DPQ1

• �"/��#– jCI'V�7�U=S8F– &I�J0>T?TI'I&�V�7@�FGS

– ��J0��IH'�V��<S8FE0,(V.68F3E4S

bdfXa]c[fZ_fYI�! ) 10NCSJ2018

Page 12:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

"���

• ����– �)6��-/�9�7�.��– =@F3!�9�.�1�,2'�*&8

• ���– �)6��-/�9�7�.��

• ����– ��3�9�3�3"�0��-#�-'�9�7�.– "��+9.8�9$�� �%5/4$��:DB%1'(

EGH;C?F>H=AH<3��� 11NCSJ2018

Page 13:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

��$+9�

ACD:@>B=D<?D;9 *). 12

�&( �0( �0534345334 �0�/ 4334 ��0534345335 ���- 5334 !�0534345336 �'��/ 4335 ��0534346334 ���- 5335 ,#�0534346335 �1�� 5336 ��0534346336 %1-2� 4335 ��0534346337 ���/ 5337 ��0534346338 ��"� 4334 ��0

��

�0( �04334 ��05334 !�04335 ��05335 ,#�05336 ��04335 ��05337 ��04334 ��0

�0( �04334 ��05334 !�04335 ��05335 ,#�05336 ��05337 ��0

NCSJ2018

Page 14:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

.�#*9�

ACD:@>B=D<?D;9 )(- 13

�%' � �0' �0534345334 �0�/ 4334 ��0534345335 ���, 5334 �0534345336 �&��/ 4335 ��0534346334 ���, 5335 +"�0534346335 �1�� 5336 ��0534346336 $1,2� 4335 ��0534346337 ���/ 5337 ��0534346338 ��!� 4334 ��0

�%' � �0' �0534345334 �0�/ 4334 ��0534346338 ��!� 4334 ��0

.�

NCSJ2018

Page 15:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

,#*9�

ACD:@>B=D<?D;9�)(. 14

�%' �� �0' �0�534345334 �0�/ 4334 ��0534345335 ���- 5334 �0534345336 �&��/ 4335 ��0534346334 ���- 5335 +"�0534346335 �1�� 5336 ��0534346336 $1-2� 4335 ��0534346337 ���/ 5337 ��0534346338 � !� 4334 ��0

�%' �� �0'534345334 �0�/ 4334534345335 ���- 5334534345336 �&��/ 4335534346334 ���- 5335534346335 �1�� 5336534346336 $1-2� 4335534346337 ���/ 5337534346338 � !� 4334

�0' �0�4334 ��04335 ��05334 �05335 +"�05336 ��05337 ��0

NCSJ2018

Page 16:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

E-RSOV

• E-RSOVB�)– QZMZYNJX81975�A�

• 3�B�A�:G5FEGDBC2�, @DB>5H�, @DB>5H2��?0/?67]<B��>(��'>5G4

– �,I��[Entity\?0/[Relationship\>SOV�:G��– �.�9;1 @��OZMSOVI*-:G

• E-RSOVB��)%– ��[Entity\

• $��,?9=�:G? &9;DB– ��[Attribute\

• ��B��?9= &9;DB– 0/[Relationship\

• ��?��?B0�I#9;DB• ��A�:G��

UWZKTPVOZMRZLB�"!+ 15NCSJ2018

Page 17:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

ERD(E-R����!�)

"$%� �#�%��%����� 16

�!��% ���� � �

��

��

ID

��

NCSJ2018

Page 18:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

yvwxtz

• IDEF– 1970��9'%1 ICAM(Integrated Computer Aided Manufacturing)WeZU`VhJOQ5 ASD)�ASD +��• IDEF = ICAM Definition

– 1990��9'NIPSKFIPSG���HBF +• NIPSr National Institute of Standards and Technology u&���,"$�s• FIPSr Federal Information Processing Standards u24������s• IDEF = Integration Definition

• IDEF1X– IDEF0 : ��K��Tjam�CR��– IDEF1X : ����G�/HASRaq]T)�CRDLKjam���

• IDEF1TlnqZkdmaq]iq\J3�BNC;O<J��BDMK– lnqZkdmaq]iq\K +J�?��ASF;R

• IDEF1XKERD– ^XoKERDOQM-�=�(G:R– Yo`V`V6K7�T9*Hc_brpsE@G-�CR

• �(I-�T�;I=P9.8Ig[f\mqmT-�G>R

lnqZkdmaq]iq\K�#!0 17NCSJ2018

Page 19:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

ERD$IDEF1X%

"#���!�#��#��� �� 18

����# ���� ���

��

ID

���

��ID����

����

����# ���

NCSJ2018

Page 20:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

"2�

• "2�– "2�L�FE��MYbXLDREOM[aWV

• YbXM�7�SKAD• 85�M�=YbXM;'-LNJOR• c��cT�JKRP>LDR

– "2�CHYbXS�,DRBJI<$&KYbXM+%S/>BJ?I@R

• "2�M'&– YbXS�,DR;'M��S")L�.DR– ;'��M8�S")L�.DR– YbXM�7�S�Q:A– YbXM60S��9LDR– YbXL8�DR1�S!#�DR– YbXM��<4<�:� M$�<YbXM� �S�G

^`bU]Z_YbX\bVM�*(3 19NCSJ2018

Page 21:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

!0�

• !0�– 6!0�

• 3�faiJP��O�P5�T/��J:GIPMUM;9

• BO �Y#FDI;M;3�Y86!0�K;<

– +m!0� p 1NF ( 1st Normal Form )• ��O�KDIO,V2DMLO5�T/��O�FM;.OBK

• �HO7&N8/�O�?�GI;W$�?M;

– +n!0� p 2NF ( 2nd Normal Form )• +m!0�O �Y#FDF<=J8EQIO6[l��?�[lN�DI��3���J:W.OBK

• [lKO��J�CXFSO?8+n!0�

– +o!0� p 3NF ( 3rd Normal Form )• +n!0�O �Y#FDF<=J86[l��?�)%N3���JPM;.OBK

• ��O3���>U�FM3���Y�WK@8�)%3���?�V*HK;<

• �)%N"RW7&Y-�DI�EWK8+o!0�KMW

– eZ^k\`b!0�• +o!0�>U8[lK7&?m��JM;SOYV4AK8eZ^k\`b!0�KMW

hjl]gcial_dl^O ('1 20NCSJ2018

Page 22:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

JT�Tc{y{n

• shi{Pmuzfdgtz

– shi{k{qw• ��Rl{iTW �.I]• �+F ]l{iUmuzfdgtzk{qwA[#F ]

– muzfdgtzk{qw• ��#Tl{i �+I]• shi{k{qwP8�GRD V�� RFR>

• c{Pbzljdh– c{

• �,I]PCS<� !�I]KXT��• 0�T:$SZ\<~MT� !�I]c{`0�c{P>?

– bzljdh|,�}• �,RQT�" ;5�I]KXTl{i�6• c{:$TWBbzljdhPI]EPBOC]• bzljdhPGK:$SU<9NULL*Y���T*B��F ]

• *

:$S�)I]l{iS�GNT*– 9NULL* � ����|'}T:$U2XR>– ���* � �Txe{nT�Hpa{wnS<��T�B=LNU>DR>

– ��* � 3" (SZ\l{iT \@]�B*F^]– �c{|bzljdh}* � ���*P9NULL*B-W�_F^K*– �7c{* � �T/SZ\<�B1�F^]*

vx{gtowl{ir{hT�&%4 21NCSJ2018

Page 23:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

DBMS�����

• ����– %1#(1!����– ��!�1)– ��!�1)– ��!�1)

• %1#����– SQL– NDL– DL/I

• ���– � ���– ��"!�– �*$&+0&�– ����

-/1 ,'.%1#(1!����� 22NCSJ2018

Page 24:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

��oj�y

• (�oj�y– +��-Y."Y�%4&

– q�px�o LODM[SYq�pfq�p{q�X�QS9;LO_Y

– 9;��• �l�rX?Md��• vh��rY*�

• j���• q�px�o��

• �=oj�y– ��Yw�k�z`}�m�Fb]Oq�px�oY9;

– �RYq�px�oY�=\OZ8$Yq�px�of9;LO_Y– �=oj�yf�LSANJX9;KeSDd2��Tq�px�of#�MdJUGTHd

– w�k�zT,Md�l�rUY?<PIf�cLS�6Md

– ?�q�px�oY��Aoj�yY=�PIf�cLO_YfBt|�CUDE

• �=oj�y– (�oj�yfl�u|�p�X�+MdO^Y9;

– 9 75�XSVYaEW��T9>KeSDdYFY��f!R

– q�pG�@X'3Ked),vgi�f1,Md

���n~s�q�px�oY�0/: 23NCSJ2018

Page 25:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�����[]\

• MTYD@ESY– ]/7.5��4LZJPZG<� +:��– LZJ4��^CQKM7.5XZVOK@<�$714��– � 5!+60��(;:%+60��(;:%4#,;%1":

• �����– ��4MTYD@ESY&��3�(;09!LZJ3��<�*(-2#.84��

• MTYD@ESYGBFRZUYA– ��4UIZG3=@HG+:MTYD@ESY<��+:– ��)0#:MTYD@ESY<?RZ>YA)�(-:– MTYD@ESY< ��)0#'

UWZESNVLZJPZG4���� 24NCSJ2018

Page 26:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�$�2�uwv

• rd['– ;Wfns^[_ms@%"DI<WetcY8�$M�2CXW�Nfns^[_ms?U%"JAL<T=MFW

– %"O8\kdfQGOrtpid[J1�FW

• $� Zp]oal– 3 Nfns^[_ms@�$M��FW��8�M�2@6�CXGfns^[_msN�*@�?U6�CXWfns^[_msTVS�M�2CXGT=M�=

– �?U�2CXWfns^[_msMI�(CXI<WetcM8�M�2Y6�DI<Wfns^[_msOZ[b`JAL<

– �27�N0*NGRM8fns^[_msM�DI9$� :@��CXW

• edgrd[– 3 Nfns^[_ms@�EetcY,D;=��8�#N�*Y1�DLBXP>�<M,JAL<)&KLW

– edgrd[@-+DG��8�?U�*Y6�DGfns^[_ms@�!CXW– yxz{O8�fns^[_ms@edgrd[)�MLHI<L<?0*FW�4@;W

oqt_mhpetcjt`N�/.5 25NCSJ2018

Page 27:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

������

• /B+�����– 3-%!-6

• 3-%!-6'4B

• ?&5 "=

• ,#-%8"A0

– /B+����

• �����– 0;A(%):A��– )*.9��– ���

• ��� – ����C?B=3-%D– ����C5$@B13-%D– ���

<>B):2=/B+7B*����� 26NCSJ2018

Page 28:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

SQL�����

MySQL�SQL�����

Page 29:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

542�����

• $-"����.112/– #-&*���������– CREATE 0 #-&*���

– ALTER 0 #-&*���– DROP 0 #-&*���

• $-"����.132/– $-"����������– INSERT 0 $-"���– SELECT 0 $-"��,�– DELETE 0 $-"���– UPDATE 0 $-"��

)+- (%*$-"'-!����� 28NCSJ2018

Page 30:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�1DGL

• �M@LEJOTABLEN– AL?;��-964– AL?5K<LB��0��+:9– ��+:.AL?3$#�5��+:/&2&– �4�35CREATE TABLE(��+:9– AL?4��6��6��0%9

• DGLOVIEW– �'7AL?;�8�-��;�,.64– #�;�-9*160)9– �8�- ;�-9*160)9– �4�;"�-9*160)9– DGL4�35CREATE VIEW(��+:9– ���3��50)2&

• ����2DGL6%9

IKL=HCJAL?FL>4���! 29NCSJ2018

Page 31:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

������

• ����– CREATE�ALTER– ��-��������

• $-"���– INSERT

• $-"��– SELECT– WHERE�����

• $-"� ����– UPDATE�DELETE

• ,-*&#��– COMMIT�ROLLBACK

)+- (%*$-"'-!����� 30NCSJ2018

Page 32:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

*�$*������

• CREATE DATABASE– *�$*����– CREATE DATABASE test;

• test���� � *�$*����

• SHOW DATABASES– show databases;– ���� *�$*���������

• USE database– #�'!+�()!,� *�$*����– USE test;

• #�'! *�$*��test���

&(*�%"' *�$*����� 31NCSJ2018

Page 33:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

!,&*���

• CREATE TABEL–��������!,&*�����

)+,�($*", ',��� 32

create table members( ß member������!,&*���id char(5), ß id���%�,*#������char�5� name char(50), ß id���%�,*#������char�50� tel char(13), ß tel���%�,*#������char�13� mail char(50) ß mail���%�,*#������char�50� );

NCSJ2018

Page 34:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

$2(/���

• �-+����–$2(/�� 3 �-+�

– DESC 3 �-+������ *1&• DESC tablename;• tablename�����$2(/��-+������

• $2(/���– show tables;

• ������$2(/��������– show table status;

• $2(/�����������

.02!,'/%2#)2"�� �� 33NCSJ2018

Page 35:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

3?7<*�"

• ��(%, – ���./9?5&,4?2

• CHAR ���@��$A• 255����

• VARCHAR ���@�$A• 0B65,535��

• TEXT ���• �$65,535��

– ��./9?5&,4?2 • INT ��• FLOAT ����• DOUBLE � �����

– ��>��./9?5&,4?2 • DATE ��

• TIME ��• DATETIME ��)��*!+�-'

• YEAR �

;=?0:6<4?28?1*���# 34NCSJ2018

Page 36:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

*5/3 ��

• �&5 ��– *5/3�����&56primary key7$���"– �&5����.%53,�!��NULL��������� �#"

245'1-3+5)05( ���� 35

create table members(id char(5) primay key, ß id���.%53,$������&5��"name char(50),tel char(13),mail char(50));

NCSJ2018

Page 37:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

9F?D)��

• ��) �– �>2FD;(��".��)��– ��)��

• PRIMARY KEY �3F(��". NOT NULL&UNIQUE1�+0#$,)• NOT NULL :F81�� '�/*'-'�• UNIQUE �)E5F;)�>2FD;(�!�1��'�

• DEFAULT ���) �

CEF6B<D:F8@F7)���� 36

create table members(id char(5) primary key, ß primary keyG�3FH1 �name char(50) not null, ß ��& %�NULL1 �tel char(13) unique, ß ��& %A=F41 �mail char(50) ß �,��1 � %�'�);

NCSJ2018

Page 38:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

6@:>-��

• �!1@��– �-6@:>-�1@0��'.– �&/.7@5$ �&/(�-��0��*%.– �-��$��&/.– �-6@:>,)��&/)#.?2@8$�"*%+#

• �!1@��-����– create table*-��

• create table members(id char(5) primary key,��pref char(2) not null refferrences Prefectures(pid));

=?@3<9>7@5;@4-��� 37NCSJ2018

Page 39:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

4@7<$��

• ->53.1– ->53.1,� �)��

• ��$�%�C���'0@/>09<#�+*)• ->53.1AindexB,��?� �)�! &(��"����)&�#")

– ->53.1$���– create table tablename (index indexname(fieldname));

– create index indexname on tablename(fieldname);• create index id_index on members(id);

;=@0:6<5@28@1$���� 38NCSJ2018

Page 40:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

1;59%�

• �%1;59%��,�)– SELECT,�(�+��1;59%��– create table tablename select * from origin;

• tablename �$��)1;59�

• origin �"#)1;59%�

• origin!��*�1;59"����$#)• origin!��*�1;59���� �)2;0&�' -4;�*)

8:;.7392;06;/%���� 39NCSJ2018

Page 41:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

&0*.���

• ��&0*.�����&0*.!��– LIKE!����&0*.���– create table tablename LIKE origin;

• tablename ������&0*.

• origin �����&0*.

• origin�����&0*.�������• '0%�")0� ��

-/0#,(.'0%+0$�� �� 40NCSJ2018

Page 42:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

5C;@&�

• MySQL&�/C8�– MySQL#'�6C3+��!)�%� !)�/C8+�!)�$�#�)• 6:.@7� *"�)�/C8'���&/=B8#�()�$�#�)

– show variables like ‘character%’• � #�)�/C8247&��'���&/=B8#��#�)

– show character set;

– � !)�/C8&�• �:,-@%"�

– my.ini:,-@%"��

• 6C3<C1��#�

• 5C;@��#�

?AC0>9@6C3<C1&���� 41NCSJ2018

Page 43:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�"� ��

• �"� ����"���–�������"��� cp932������

NCSJ2018 �!"��� �"��"����� 42

create table members(id char(5) primary key,name char(50) not null,tel char(13) unique,mail char(50) ) CHARSET=cp932; ß ���"��CP932���

Page 44:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

.=4: ��

• MySQL ,0;=+%<+<– MySQL�!�.=4:$���"����/=-$���")<6=2<0��",0;=+%<+<$��"�����"

– /3&:0�!�InnoDB�,0;=+%<+<������#"• �����#�.=4:!�InnoDB����#"�• '8(: �!�InnoDB��"�

9;=*71:/=-5=, � �� 43NCSJ2018

Page 45:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�%�"��

• MySQL���#%��$�$– MySQL��������#%��$�$ ������� (MySQL 5.6)

• InnoDB• MyISAM• MEMORY• CSV• ARCHIVE• BLACKHOLE• MERGE• FEDERATED• EXAMPLE

!#%� �"�%��%����� 44NCSJ2018

Page 46:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�������

• ����������������

–� ����������InnoDB���

������������������ 45

create table members(id char(5) primary key,name char(50) not null,tel char(13) unique,mail char(50) ) ENGINE=InnoDB; ß ����������InnoDB���

NCSJ2018

Page 47:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�������

• ���������� – alter table oldtable RENAME newtable;

• oldtable ���������

• newtable ���������

����������������� 46NCSJ2018

Page 48:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�& $���

• ALTER TABLE : �& $��������– ��&$��������' change– alter table tablename change org_fieldnew_field ()pe;• tablename �����& $���

• org_field ������&$����

• new_field ����&$����

• type ��&$����

– alter table members id mid char(5);

#%&�"�$�&�!&���� � 47NCSJ2018

Page 49:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�!�����

• ��!�������"modify– alter table tablename modify field type;

• tablename �!�����

• field �� ���!��

• type �� ����

– alter table members modify id char(10);

� !�����!��!���� 48NCSJ2018

Page 50:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�!�����

• ��!�����"add– alter table tablename add field type;

• tablename �!����

• field �� ���!��

• type �� ����

– alter table members add dob date;

� !�����!��!����� 49NCSJ2018

Page 51:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�������

• �������� drop– alter table tablename drop field ;

• tablename ������

• field �� ������

– alter table members drop dob;

����������������� 50NCSJ2018

Page 52:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

������

• DROP TABLE TABLENAME–��� ��������– TABLENAME ����������

– drop table members;

����������������� 51NCSJ2018

Page 53:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

*���

• ��)�*!���+INSERT

– insert into tablenamevalues(value1,value2,…);

• tablename �*$(��

• value1,value2,… �����– #�*(!����������

– inert into members

values(‘00001’,’HATOYAMA’,’03-1234-5678’,

[email protected]’);

')*�&"( *�%*���� � 52NCSJ2018

Page 54:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�'����

– �'%������� &�'����– insert into tablename (field1,field2)

values(value1,value2);• tablename �'!%���

• field1,field2 �'����� �'%����

• value1,value2 ����

– inert into members(id,name) values(‘00001’,’HATOYAMA’);

$&'�#�%�'�"'������ 53NCSJ2018

Page 55:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

(����

• ��� (����– SELECT * FROM TABLENAME;

• TABLENAME (�������("&���

• �("&�� ��������� (������

– SELECT * FROM MEMBERS;• �("&�members��� ��������� (������

%'(�$!& (�#(���� 54NCSJ2018

Page 56:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

(2&���

• +#20)"����(2&���– SELECT fieldname FROM TABLENAME;

• fieldname +#20)���3�����4

• TABLENAME (2&"����'2,0���

• '2,0���!�� ����(2&"����

– SELECT ID, NAME FROM MEMBERS;• '2,0�members����!�� ����(2&��ID�NAME��"����

/12$.*0(2&-2%��� 55NCSJ2018

Page 57:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

0:.#�

• �*����0:.#�– SELECT * FROM TABLENAME WHERE ��;

• fieldname 3+:81#��;�����<• TABLENAME 0:.*�'��/:48#��• WHERE �� ��(3+:81# �

• /:48"���)!�(0:.�& �"���(%#*�'��

– SELECT * FROM MEMBERS WHERE ID=‘00001’;• /:48�members�"���)!�(�$!#0:.�&

ID�’00001’#%# �*�'��

79:,6280:.5:-#���� 56NCSJ2018

Page 58:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

������

• ����!�"�����– select field from table LIMIT number;

• LIMIT !�"�����

• number ��������

– select * from members LIMIT 10;• �"� members��10� �"������

�!"��� �"��"���� 57NCSJ2018

Page 59:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

��

• �� �����– select field from table WHERE ��;

• WHERE���,!-& ������ ���• ���������,!-&������

– select * from members where id=‘00001’;• id�00001�,!-& ���

*,-")'+%-$(-#����� 58NCSJ2018

Page 60:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�'���

• ���GCE�� "H�'���– MySQLF�� "HLJ

Y[]PXUZS]RV]QJ���% 59

�'��� �� �!0 �C@1 &(/ ��10 ��/0 ��/1 ��+0 ��/01 �C@ 8<77IL�� "68*,76:;- YQT�I�#DNLJB?N YQTK AM_J)I�DN>�$ KO\W

^ .*-F�N89;*68*,76:;- YQT�I�#DNLJBH@35;=558**2**284**3 2G3J)89;*35;=558**2**284**3 2G3J)FKH@6:*8<77 8<77F?N6:*89;*8<77 8<77FH@

NCSJ2018

Page 61:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

� ���

• � �����–*�(#�+#

• % �����

• _ ��,��

– LIKE• � ����������������• select * from table where field LIKE ‘A%’;

– NOT LIKE• � ������������������• select * from table where field NOT LIKE ‘A%’;

')+�&$("+!%+ ����� 60NCSJ2018

Page 62:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

������

• AND���� – select * from table where ��1 AND ��2;

• 1���������� ��.#/("���!

• OR���� – select * from table where ��1 OR ��2;

• 1������������0��� ��.#/("���!

,./$+)-'/&*/%����� 61NCSJ2018

Page 63:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

��#��

• ��#��– �& $���&$���������– ����� ����

• �& $����#��– �& $� AS ��#��– select * from table1 AS a where a.id=‘00001’;

• ��&$�����#��– ��&$�� AS ��#��– select field1 as a from table where a=‘00002’;

#%&�"�$�&�!&���� 62NCSJ2018

Page 64:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

+$1/) �

• +$1/) �–(1'��2select3���+$1/) (1'# ��������!�����!

– select id, title, price*1.05 from price_mst;• price * 1.05 price����"��!��1.05#��!

.01%-*/(1',1& ��� 63NCSJ2018

Page 65:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

��

• =2DA;+$&��1����–9D8� EselectF�+�� $%=2DA;,��.��*),��1��"( '!/

–��#0&�/��,�• AVG ��,��• COUNT B5D;�143C:• MAX ��1�-/• MIN ���1�-/• SUM ��1�-/

–��,���• select AVE(price) from goods;

@BD6?<A9D8>D7,���� 64NCSJ2018

Page 66:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

����

• ����������)"��������–�������

• ORDER BY field• select * from members ORDER BY name;

–�������• ORDER BY field DESC• select * from members ORDER BY name DESC;

&()�%#'!) $)���� 65NCSJ2018

Page 67:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

� ��#

• � ��#��'–������������ – select field from table where field IN (SELECT …);

• IN (SELECT …) ����SELECT�����

– select * from prices where code IN (SELECT code FROM goods WHERE price > 1000);

#%&�"�$�&�!&������ 66NCSJ2018

Page 68:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

��� �����

• GROUP BY–�����������������– select * from table GROUP BY field;

– select * from employee GROUP BY DIV;

������������� ���� 67NCSJ2018

Page 69:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

-��#,&*�������

• UNION– -��#,&*�����

• -����#,&*�����������–���$,"',!������� ���

– select * from table1 union select * from table2;

)+, (%*$,"',!��� 68NCSJ2018

Page 70:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�& $��

• JOIN'� �(– )���& $����

• �& $���JOIN*ON����– select * from table1 JOIN table2 ON table1.code

= table2.code;

• ����& $������%�&��

#%&�"�$�&�!&����� 69NCSJ2018

Page 71:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�"����

• ���!�"����– UPDATE tablename

SET field=value WHERE ��;• tablename ���� �"� • field ������" �

• value �����

• �� !�"��������

– update membersset name=‘YUKIO’ where id=‘00001’;

�!"��� �"��"���� 70NCSJ2018

Page 72:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�'����

• ����&�'����– UPDATE tablename SET field=value;

• tablename �����'!%

• field ���� �'%�

• value �����

• ����&�'������ �'%���� ��

– update members set name=‘YUKIO’;

$&'�#�%�'�"'����� 71NCSJ2018

Page 73:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�!����

• ��� �!����– delete from tablename where ��;–���� � �!������ �

• ��� �!����– delete from tablename;– ��� �!���� �

� !�����!��!����� 72NCSJ2018

Page 74:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

SQL(=FK758EK

NCSJ2018 GIL8E?H<L:BL9+���� 73

• =FK758EK+��– ��6C;=DL>���+��

• N%+=FK758EK,����+ ��� )10&�.6C;=-$,JLH@;5��!0/-''�/

– ��6C;=DL>���+��• START TRANSACTION -$, BEGIN'�"�=FK758EK���!0/

– ��6C;=DL>+�• SET AUTOCOMMIT'�#/

– �� O N

– �� O M– EX) SET AUTOCOMMIT=0; ß ��6C;=DL>2��*�

• �A34H'+�– �A34H O my.cnf– ���

» [mysqld]» init_connect=‘SET AUTOCOMMIT=0’

Page 75:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

SQL(=CH758BH

• =CH758BH+��– J%+=CH758BH,� ��+���� )32&�06A;=.#,GIE?;5���!21.''�1

– 6A;=.#,GIE?;5���!21(�J%+=CH758BH���"1

• ����– COMMIT;– ��+��*/$&�32#��4�"-&��*"1– 6A;=��,���4�*" (,'�)�

• GIE?;5– ROLLBACK;– ��+��*/$&�32#��4�"-&��"1– ��!2#<I:,�"-&�321

DFI8B>E<I:@I9+���� 74NCSJ2018

Page 76:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

OSY

• OSY;��– @/ �2B��D�?�"16-/– %�;JYPV=; �2DZ5:>8?B

• �!��;�• �!�#;��

• OSY;��– ���9JYPV816�B$,– %�;JYPVD�:�AC3OSY;��)��:<�(.*B

– \[]^;NYGTX:@46<ERYL16+9+08.*B• MySQL7<v5.0�'7ERYL

UWYFTMVKYIQYH;� �& 75NCSJ2018

Page 77:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

)-2�����

• )-2���– 3��%2+0��)-2 ������– CREATE VIEW viewname AS SELECT fieldname

FROM tablenameWHERE ��;• viewname ����)-2��• fieldname *!20'• tablename %2+0

– create view v_mbr as select name,telfrom members where age>=22;

• v_mbr ����)-2��• name,tel ����*!20'

• members %2+0• where age>=22 age�22����� �

/12".(0&2$,2#���� 76NCSJ2018

Page 78:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

.27�����

• .27��–� �*705�".27$��#��– create view viewname as select

table1.field1,table2.field2,… from table1join table2 using(field) where ��;

• viewname ��#.27���• table1 field8�*705• field1 .27�� �!/%75,��• table2 field2�*705• field2 .27�� �!/%75,��• field ���&7��#/%75,��• where �� �����

467'3-5+7)17(����� 77NCSJ2018

Page 79:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

'+0�����

• �#0).����'+0����– create view v_sample

as select member.id,member.name,log.last, from member join log using(id)where log.last >= 20100101;

–������#0). 1 member�log–������(�0.% 1member.id, name– 1 log.last–��������(�0.%1id– ���� 1 log.last >= 20100101

-/0 ,&.$0"*0!����� 78NCSJ2018

Page 80:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

.16$���

• .16#%&,6*$��– select * from v_mbr;– select * from v_sample;

– SELECT'���&����$+6/4$����#���"�!�&

– MySQL$���v5.0��!.16#�� �&

356(2-4,6*06)$���� 79NCSJ2018

Page 81:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

-05 ��

• -05�#%�– UPDATE

• �"� -05�����!����%

– INSERT• �� *5.3�$���&�-05�!�����%• �� *5.3�$���&�-05�!������

245'1,3+5)/5( ���� 80NCSJ2018

Page 82:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

"&+����

• "&+��– ALTER VIEW viewname AS SELECT field FROM table;

• viewname ���"&+���

• field ������#�+) �

• table �+�������+$)�

• "&+���– DROP VIEW viewname;

• viewname ����"&+���

(*+�'!)�+�%+������ 81NCSJ2018

Page 83:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

04-57?.A/:

• 04-57?.A/:%'– ��&02A49@4,��,��#)%*#��!#��– 7?.A/:&��,�(�" %$ �$�+

• ����– CREATE PROCEDURE stored_procedure()

BEGIN02A49@4END

– stored_procedure() 04-57?.A/:&��– ��,��+��

• CREATE PROCEDURE stored_procedure(val type)• val ��&���

• type ��&

<>A.;6=3A18A0&��� 82NCSJ2018

Page 84:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

�����!�"��

• �����!�"����– CALL stored_procedure;

• stored_procedure ��������!�"��

– CALL stored_procedure(value);• stored_procedure ��������!�"��

• value ���� ���

� "�����"��"����� 83NCSJ2018

Page 85:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

-0)13<+>,7

• �$��– SHOW CREATE PROCEDURE stored_procedure;– stored_procedure ���%3<+>,7

• /96.$�– -0)13<+>,7(���%"�#�MySQL$*5=1���#���'&!�%/96.�?�(�� �����%�

– DELIMITER new_delimiter ;• new_delimiter ��/96.

9;>+82:/>.4>-$���� 84NCSJ2018

Page 86:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

'+#,."6$&26

• '+#,."6$&26��–�!17%7���� ��–��������� � �����

• ')7+06+��� � �����

• '+#,."6$&26���CREATE FUNCTION stored_function() RETURNS type DETERMINISTICBEGIN����

END

357&2-4*7(/7'����� 85NCSJ2018

Page 87:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

����� �����

• ����� �������

������������������ 86

CREATE FUNCTION sample_func() RETURN INT DETERMINISTICBEGINDECLARE x INT;SELECT SUM(qty * price) INTO x FROM stock;RETURN x;END

���SELECT sample_func();

����� �������show CREATE FUNCTION stored_func;

NCSJ2018

Page 88:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

%*�-

• %*�-��.–#-'+������������� ���������

• %*�-���– CREATE TRIGGER triggername BEFORE/AFTER statement

ON tablename FOR EACH ROW– BEGIN– ���– END

*,- )&+$-"(-!����� 87NCSJ2018

Page 89:  · – eZ^k\`b!0 • +o!0 >U8[lK7&?m ... LODM[SYq pfq p{q X QS9;LO_Y – 9; • l rX?Md • vh rY ... – w k zT ,Md l rUY?<PIf c LS 6Md – ? q px oY Aoj ...

NCSJNovice Class Seminar - Java Programmer

directed co.,ltd.