1. Trang chủ
  2. » Công Nghệ Thông Tin

Giáo trình thực hành sql

46 162 2
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Giáo trình thực hành sql

Giaùo trỗnh thổỷc haỡnh SQL7UDQJ*,lv,7+,j864/6WUXFWXUHG4XHU\/DQJXDJHODQJQQJÔFVGXÊQJFKRFDFKÊTXDQWUF VGOLÊX TXDQKÊ 1JQ QJ 64/ FKXQ ÔF D UD EL $16,$PHULFDQ1DWLRQDO 6WDQGDUGV ,QVWLWXGH YD ,62 ,QWHUQDWLRQDO 6WDQGDUGV 2UJDQL]DWLRQ YLSKLQ EDQ PL QKÂW KLÊQ QD\ OD SKLQ EDQ 64/ SKLQ EDQ ÔF D UD QP0ÊFGXFRQKLXQJQQJNKDFQKDXÔFDUDFKRFDFKÊTXDQWU&6'/TXDQKÊ64/ODQJQQJÔFVGXÊQJUÔQJUDLKLÊQQD\WURQJUÂWQKLXKÊWKÂQJ&6'/WKQJPDÊLQK2UDFOH64/6HUYHU'%0LFURVRIW$FFHVV7KQJTXD64/QJLVGXÊQJFRWKGĂGDQJQKQJKDÔFGOLÊXWKDRWDFYLGOLÊX0ÊWNKDF\ODQJQQJFRWQKNKDLEDRQQQRGĂVGXÊQJYDFXQJYYÊ\PDWUQQSKELÂQ*LDRWULQKQD\QKPFXQJFÂSFKREDÊQWDLOLÊXWKDPNKDRWQJÂL\XYFDFFXOÊQK JLDRWDF 64/ V GXÊQJFKRKÊ TXDQ WU &6'/ 0LFURVRIW64/ 6HUYHU*LDRWUQKEDRJPEÂQFKQJ&KQJJLLWKLÊXPÔWVÂFXOÊQKVGXÊQJWURQJYLÊFQKQJKDFDFÂLWÔQJGOLÊXQKEDQJGOLÊXNKXQJQKQYDFKPXÊF &KQJ WUQK ED\ EÂQ FX OÊQK WKDR WDF G OLÊX OD 6(/(&7 ,16(5783'$7(YD'(/(7(WURQJRWÊSWUXQJFKX\ÂXFXOÊQK6(/(&7&KQJFÊSÂQKDLFXOÊQKLXNKLQOD*5$17YD5(92.(VGXÊQJWURQJYLÊFFÂSSKDWYDKX\ERTX\QFXDQJLVGXÊQJ&6'/ &KQJ JLL WKLÊX Y WKX WXÊF OX WU YD WULJJHU j\ OD QKQJ ÂL WÔQJ&6'/ÔFVGXÊQJQKPWQJKLÊXQQJNKLVGXÊQJ&6'/7URQJFKQJSKXÊOXÊFFKXQJWLJLLWKLÊXFÂXWUXFYDGOLÊXFXDFDFEDQJVGXÊQJWURQJFDFYGXÊFKQJEDÊQWLÊQWUDFXYDÂLFKLÂXYLFDFYGXÊDQX1JRDLUDWURQJFKQJQD\FRQFRFDFKDPWKQJVGXÊQJWURQJ64/6HUYHUFDFEDÊQWKDPNKDRWURQJWKÊFKDQK0ÊFGXDUÂWFÂJQJQKQJJLDRWUQKNKQJWKWUDQKXÔFFDFVDLVRW5ÂWPRQJQKÊQÔFVÊJRS\FXDFDFEDÊQJLDRWUQKQJD\FDQJKRDQWKLÊQKQ Trỏửn Nguyón PhongCChhổổồồnngg 11:: NNGGNN NNGGặặẻẻ ậậNNHH NNGGHHẫẫAA DDặặẻẻ LLIIUU1JQQJQKQJKDGOLÊXEDRJPFDFFXOÊQKFKRSKHSQJLVGXÊQJQKQJKD&6'/YDFDFÂLWÔQJWURQJ&6'/QKFDFEDQJFDFNKXQJQKQFKPXÊF7DREDQJGOLX'OLÊXEQWURQJPÔW&6'/ÔFWFKFOXWUWURQJFDFEDQJ%QWURQJFDFEDQJGOLÊXÔFWFKFGLGDÊQJFDFGRQJYDFDFFÔW0ĂLPÔWGRQJELXGLĂQPÔWEDQJKLGX\QKÂWYDPĂLPÔWFÔWELXGLĂQFKRPÔWWUQJ&DFWKXFWQKOLQTXDQQEDQJ.KLWDÊRYDODPYLÊFYLFDFEDQJGOLÊXWDFQSKDL\ÂQFDFWKXÔFWQKNKDFWUQEDQJQKNLXGOLÊXFDFUDQJEXÔFFDFNKRDFDFTXLWF&DFWKXÔFWQKQD\ÔFVGXÊQJQKPWDÊRUDFDFUDQJEXÔFWRDQYHÊQWUQFDFFÔWWUQJWUQEDQJFXQJQKWDÊRUDFDFWRDQYHÊQWKDPFKLÂXJLDFDFEDQJGOLÊXWURQJ&6'/D.LXGOLX0ĂLPÔWFÔWWUQJFXDPÔWEDQJXSKDLWKXÔFYDRPÔWNLXGOLÊXQKÂWQKDÔFQKQJKDWWUF0ĂLPÔWNLXGOLÊXTXLQKFDFJLDWUGOLÊXÔFFKRSKHSÂLYLFÔWR&DFKÊTXDQWU&6'/WKQJFXQJFÂSFDFNLXGOLÊXFKXQQJRDLUDFRQFRWKFKRSKHSQJLVGXÊQJQKQJKDFDFNLXGOLÊXNKDFGÊDWUQFDFNLXGOLÊXDFR'L\ODPÔWVÂNLXGOLÊXWKQJÔFVGXÊQJWURQJJLDRWDF64/BinaryBitCharDatetimeDecimalFloatImageIntMoneyNcharNtextNvarcharRealSmalldatetimeSmallintSmallmoneyTextTinyintVarbinaryVarcharE&DFUDQJEXF&21675$,1767UQFDFEDQJGOLÊXFDFUDQJEXÔFÔFVGXÊQJQKPFDFPXÊFFKVDX 4XLQKFDFJLDWUGOLÊXKD\NKXQGDÊQJGOLÊXÔFFKRSKHSFKÂSQKÊQWUQFDFFÔWFXDEDQJUDQJEXÔF&+(&. 4XLQKJLDWUPÊFQKFKRFDFFÔWUDQJEXÔF'()$8/7 Giaùo trỗnh thổỷc haỡnh SQL7UDQJ 7DÊRQQWQKWRDQYHÊQWKÊFWKWURQJPÔWEDQJGOLÊXYDWRDQYHÊQWKDPFKLÂXJLDFDF EDQJ G OLÊX WURQJ &6'/ UDQJ EXÔF 35,0$5< .(< 81,48( YD)25(,*1.(<&KXQJWDVHWPKLXFKLWLÂWKQYFDFUDQJEXÔFQD\SKQWUQKED\YFXOÊQK&5($7(7$%/(7DREDQJEQJWUX\YQ64/7DÊRFDFEDQJODPÔWNKXTXDQWURQJWURÔQJWURQJTXDWUQKWKLÂWNÂYDFDLGÊWFDF&6'/%QWURQJFDF&6'/PĂLPÔWEDQJWKQJÔFVGXÊQJQKPELXGLĂQWKQJWKLYFDFÂLWÔQJWURQJWKÂJLLWKÊFYDKRÊFELXGLĂQPÂLTXDQKÊJLDFDFÂLWÔQJRjFRWKWFKFWÂWPÔWEDQJGOLÊXEDÊQWQKÂWFQSKDL[DFQKÔFFDF\XFXVDX %DQJÔFVGXÊQJQKPPXÊFFKJYDFRYDLWURQKWKÂQDREQWURQJ&6'/" %DQJVHEDRJPQKQJFÔWQDRYDNLXGOLÊXFKRFDFFÔWRODJ" 1KQJFÔWQDRFKRSKHSFKÂSQKÊQJLDWU18// &RVGXÊQJFDFUDQJEXÔFFDFPÊFQKKD\NKQJYDQÂXFRWKVGXÊQJXYDQKXWKÂQDR" 1KQJFÔWQDRVHRQJYDLWURODNKRDFKQKNKRDQJRDLNKRDGX\QKÂW"1KQJGDÊQJFKPXÊFQDRODFQWKLÂWYDFQXD7DREDQJGOLXjWDÊRPÔWEDQJWURQJ&6'/EDÊQVGXÊQJFXOÊQK&5($7(7$%/(FRFXSKDSQKVDX CREATE TABLE table_name ( {colname_1 col_1_properties [constraints_1 ] [,{colname_2 col_2_properties [constraints_2 ]] . [,{colname_N col_N_properties [constraints_N ]] [table_constraints] )7URQJR- table_name:7QEDQJ FQWDÊR 7QFXD EDQJ SKDL GX\QKÂWWURQJPĂL&6'/YDSKDLWXQWKHRFDFTXLWFYQKGDQK- colname_i:7QFXDFÔWWKLWURQJEDQJ&DFFÔWWURQJPĂL Tráön Nguyãn PhongEDQJSKDLFRWQNKDFQKDXYDSKDLWXQWKHRFDFTXLWF YQK GDQK 0¡L P¤W EDQJSKDL FR WQK¢WP¤WF¤W- col_i_properties:&DFWKX¤FWQKFXDF¤WWKLTXLQKNL XGOL£XFXDF¤WYDFKQKF¤W FRFKRSKHSFK¢SQK£QJLDWU18//KD\NKQJ- constraints_i:&DF UDQJ EX¤F Q¢X FR WUQ F¤W WK L QK FDFUDQJEX¤FYNKRDFDFP£FQKFDFTXLQKYNKXQGD£QJGOL£X- table_constraint:&DFUDQJEX¤FWUQEDQJGOL£X9GX&XO£QKGL\WK£FKL£QKYL£FWD£REDQJ1+$19,(1EDRJPFDFF¤W0$19+27(11*$<6,1+',$&+,',(17+2$,CREATE TABLE nhanvien(manv char(10) not null,hoten char(30) not null,ngaysinh datetime null,diachi char(50) null,dienthoai char(6) null)E6GXQJFDFUDQJEXFWURQJEDQJGOLXDDDD5DQJEXF&+(&.5DQJEX¤F&+(&.¤FVGX£QJ FKQKFDFJLDWUKD\NKXQGD£QJGOL£XFRWK  ¤F FK¢S QK£Q ¢L YL P¤W F¤W 7UQ P¤W F¤W FR WK  FR QKLX UDQJ EX¤F&+(&.j NKDLEDRP¤WUDQJEX¤F&+(&.¢LYLP¤WF¤WQDRRWDVGX£QJFXSKDSQKVDX [CONSTRAINT constraint_name] CHECK (expression)7URQJRH[SUHVVLRQODP¤WEL XWKFORJLFTXLQKJLDWUKD\NKXQGD£QJFXDGOL£X¤FFKRSKHS.KLRFKQKQJJLDWUGOL£XQDRODPFKRH[SUHVVLRQQK£QJLDWUXQJPL¤FFK¢SQK£Q9GXj TXLQKL£QWKRD£LFXDQKQYLQSKDLFRGD£QJFKQJKD£QFXO£QKYGX£¤FYL¢WQKVDXCREATE TABLE nhanvien( Giaùo trỗnh thổỷc haỡnh SQL7UDQJ manv char(10) not null, hoten char(30) not null, ngaysinh datetime null, diachi char(50) null, dienthoai char(6) nullconstraint check_dienthoai check (dienthoai like '[0-9][0-9][0-9] [0-9][0-9] [0-9]'))DDDD5DQJEXF'()$8/75DQJEXÔF'()$8/7ÔFVGXÊQJTXLQKJLDWUPÊFQKFKRPÔWFÔW*LDWUQD\VHWÊÔQJÔFJDQFKRFÔWQD\NKLQJLVGXÊQJEVXQJPÔWEDQJKLPDNKQJFKQKJLDWUFKRFÔW7UQPĂLFÔWFKFRWKFRQKLXQKÂWPÔWUDQJEXÔF'()$8/7WFODFKFRWKFRWÂLDPÔWJLDWUPÊFQKj NKDL EDR PÔW JLD WU PÊF QK FKR PÔW FÔW WD FK QK PÔW UDQJ EXÔF'()$8/7FKRFÔWEQJFDFKVGXÊQJFXSKDSVDX [CONSTRAINT constraint_name] DEFAULT {const_expression nonarguments_function NULL}9 GX &X OÊQK GL \ FK QK JLD WU PÊF QK OD NKQJ ELÂW FKR FÔW',$&+,WURQJEDQJ1+$19,(1YGXÊCREATE TABLE nhanvien(manv char(10) not null,hoten char(30) not null,ngaysinh datetime null,diachi char(50) default 'khọng bióỳt',dienthoai char(6) null)DDDD5DQJEXF35,0$5<.(<muYGXÊQD\FKXQJWLNKQJÊWWQFKRUDQJEXÔF'()$8/7.KLRKÊTXDQWU&6'/VHWÊÔQJÊWWQFKRUDQJEXÔFQD\7X\QKLQGĂGDQJFKRYLÊFTXDQWUEDÊQQQÊWWQFKRFDFUDQJEXÔF Tráön Nguyãn Phong5DQJEX¤F35,0$5<.(<¤FVGX£QJ QKQJKDNKRDFKQKFXDEDQJ0¤WUDQJEX¤F35,0$5<.(<DPEDRUQJNKQJFRFDFJLDWUWUXQJO£S¤FDYDRWUQFDFF¤W+D\QRLFDFKNKDFJLDWUFXDNKRDFKQKVHJLXSFKRWD[DFQK¤FGX\QK¢WP¤WGRQJEDQJKLWURQJEDQJGOL£X0¡LP¤WEDQJFKFRWK FRGX\QK¢WP¤WNKRDFKQKYDEDQWKQNKRDFKQKNKQJFK¢SQK£QJLDWU18//5DQJEX¤F35,0$5<.(<ODFVFKRYL£FDPEDRWQKWRDQYH£QWK£FWK FXQJQKWRDQYH£QWKDPFKL¢Xj NKDLEDRP¤WUDQJEX¤F35,0$5<.(<ED£QVGX£QJFXSKDSVDX [CONSTRAINT constraint_name ] PRIMARY KEY [CLUSTERED|NONCLUSTERED] [( colname [,colname2 [ .,colname16]])]1¢XNKRDFKQKFXDP¤WEDQJFKODP¤WF¤WNKLRED£QNKQJFQWKL¢WSKDLFKQKGDQKVDFKFDFF¤WVGX£QJUDQJEX¤FPFF¤W7URQJWUQJK¤SNKRDFKQKODP¤WW£SK¤SWKDLF¤WWUOQED£QSKDLFKQKGDQKVDFKFDFF¤WVGX£QJUDQJEX¤FPFEDQJ9GXWD£REDQJ1+$19,(1YLNKRDFKQKOD0$19CREATE TABLE nhanvien(manv char(10) primary key,hoten char(30) not null,ngaysinh datetime null,diachi char(50) null,dienthoai char(6) null)FXO£QKWUQFRWK YL¢WQKVDXCREATE TABLE nhanvien(manv char(10) not null,hoten char(30) not null,ngaysinh datetime null,diachi char(50) null,dienthoai char(6) nullconstraint pk_nv primary key(manv)) Giaùo trỗnh thổỷc haỡnh SQL7UDQJD 5DQJEXF81,48(7KD\YVGXÊQJNKRDFKQKEDÊQFRWKVGXÊQJUDQJEXÔF81,48(DPEDRWQKWRDQYHÊQWKÊFWK6GXÊQJUDQJEXÔF81,48(WUQPÔWKD\QKLXFÔWEWEXÔFFDFJLDWUGOLÊXWUQPÔWKD\QKLXFÔWQD\NKQJÔFWUXQJOÊSQKDXjNKDLEDRPÔWUDQJEXÔF81,48(EDÊQVGXÊQJFXSKDSOÊQKVDX\ [CONSTRAINT constraint_name] UNIQUE [CLUSTERED | NONCLUSTERED] [colname1 [,colname2 [ .,colname16]])]D 5DQJEXF)25(,*1.(<&DFEDQJEQWURQJPÔW&6'/WKQJFRPÂLTXDQKÊYLQKDX&DFPÂLTXDQKÊQD\ÔF[DFQKGÊDWUQWQKEQJQKDXJLDPÔWKD\QKLXWUQJFXDEDQJQD\YLPÔWKD\QKLXWUQJFXDEDQJNKDF1ÂXPÔWKD\QKLXFÔWQDRRFXDPÔWEDQJFRJLDWUÔF[DFQKWPÔWKD\QKLXWUQJNKRDFXDEDQJNKDFWKFDFFÔWRÔFJRÔLODFRUDQJEXÔFNKRDQJRDÊLIRUHLJQNH\&DFUDQJEXÔF)25(,*1.(<ÔFVGXÊQJNÂWKÔSYLFDFUDQJEXÔF35,0$5<.(<YD81,48(QKPDPEDRWQKWRDQYHÊQWKDPFKLÂXJLDFDFEDQJÔFFKQKjNKDLEDRNKRDQJRDÊLEDÊQVGXÊQJFXSKDSOÊQKQKVDX [CONSTRAINT constraint_name ] [FOREIGN KEY (colname [,colname2 [ .,colname16]])] REFERENCES reference_table [(ref_colname [,ref_colname2 [ .,ref_colname 16]])] 9 GX 7DÊR KDL EDQJ 1+$19,(10$19 +27(1 1*$<6,1+ ',$&+,',(17+2$,0$'9YD'219,0$'97(1'9WKHRKQKGL\CREATE TABLE donvi(1+$19,(10$19+27(11*$<6,1+',$&+,',(17+2$,0$'9'219,0$'97(1'9+QK Tráön Nguyãn Phong madv char(2) primary key, tendv char(20) not null)CREATE TABLE nhanvien( manv char(10) primary key, hoten char(20) not null, ngaysinh datetime null, diachi char(50) default 'khong biet', dienthoai char(6) check(dienthoai like '[0-9][0-9][0-9] [0-9][0-9][0-9]'), madv char(2) foreign key(madv) references donvi(madv))6DLEDQJ6DXNKLDWD£REDQJED£QFRWK WL¢QKDQKVD LF¢XWUXFKD\WKX¤FWQKFXDEDQJQKE VXQJF¤WE VXQJNKRDWKD\ LFDFUDQJEX¤Fj FRWK VXD LEDQJED£QVGX£QJFXO£QK$/7(5FRFXSKDSQKVDXALTER TABLE table_name [ADD {col_name column_properties [column_constraints]  [[,]table_constraint ] } [,{next_col_name|next_table_constraint}] .] [DROP [CONSTRAINT] constraint_name1 [, constraint_name2] .]9GX7D£RP¤WUDQJEX¤FFKREDQJ'219,WUQF¤W0$'9TXLQKPDQYSKDLFRGD£QJKDLFKV¢YGX£ ALTER TABLE donvi ADD CONSTRAINT check_madv CHECK (madv LIKE ‘[0-9][0-9]’) Giaùo trỗnh thổỷc haỡnh SQL7UDQJ&KPXFLQGH[&DFFKPXÊFÔFVGXÊQJQKPKĂWUÔYLÊFWUX\FÊSÂQFDFGRQJGOLÊXÔFQKDQKFKRQJGÊDWUQFDFJLDWUFXDPÔWKD\QKLXFÔW&KPXÊFÔFFKLDUDODPKDLORDÊLFKPXÊF WXÊ QKRPFOXVWHUHG LQGH[YD FKPXÊF NKQJ WXÊ QKRP QRQFOXVWHUHGLQGH[ 0ÔWFKPXÊFWXÊQKRPODPÔWFKPXÊFPDWURQJRWKWÊORJLFFXDFDFNKRDWQJWÊQKWKWÊYÊWO\FXDFDFGRQJWQJQJWQWDÊLWURQJEDQJ0ÔWEDQJFKFRWKFRWÂLDPÔWFKPXÊFWXÊQKRP 0ÔWFKPXÊFNKQJWXÊKRPODPÔWFKPXÊFPDWURQJRWKWÊORJLFFXDFDFNKRDNKQJQKWKWÊYÊWO\FXDFDFGRQJWURQJEDQJ&DFFKPXÊFWXÊQKRPKĂWUÔYLÊFWUX\FÊSÂQFDFGRQJGOLÊXQKDQKKQQKLXVRYLFDFFKPXÊFNKQJWXÊQKRP.KLWDNKDLEDRPÔWNKRDFKQKKD\NKRD81,48(WUQPÔWKD\QKLXFÔWQDRRFXDEDQJKÊTXDQWU&6'/VHWÊÔQJWDÊRFKPXÊFWUQFDFFÔWR%DÊQFRWKWDÊRWKPFDFFKPXÊFNKDFEQJFDFKVGXÊQJFXOÊQKFRFXSKDSQKVDX CREATE [CLUSTEREDNONCLUSTERED] INDEX index_name ON table_name(column_name [, column_name] .)9GX&XOÊQKGL\VHWDÊRPÔWFKPXÊFNKQJWXÊQKRPWUQFÔW0$'9FXDEDQJ1+$19,(1 CREATE NONCLUSTERED INDEX idx_nhanvien_madv ON nhanvien(madv).KXQJQKQ9LHZ0ÔWNKXQJQKQFRWKFRLQKODPÔWeEDQJDRfFRQÔLGXQJÔF[DFQKWPÔWWUX\YÂQ0ÔWWUX\YÂQTXHU\ODPÔWWÊSFDFFKGĂQLQVWUXFWLRQQKPWUX\[XÂWYDKLQWKGOLÊXWFDFEDQJWURQJ&6'/&DFWUX\YÂQÔFWKÊFKLÊQEQJFDFKVGXÊQJFXOÊQK6(/(&7ÔFFÊSÂQWURQJFKQJ0ÔWNKXQJQKQWURQJJLÂQJQKPÔWEDQJYLPÔWWÊRFDFWQFÔWYDFDFGRQJGOLÊX7X\QKLQNKXQJQKQNKQJWQWDÊLQKODPÔWFÂXWUXFOXWUGOLÊXWURQJ&6'/'OLÊXEQWURQJNKXQJQKQWKÊFFKÂWODGOLÊXÔF[DFQKWPÔWKD\QKLXEDQJFVYDGRRSKXÊWKÔFYDRFDFEDQJFV&DFNKXQJQKQWKQJÔFVGXÊQJEQWURQJ&6'/QKPFDFPXÊFFKVDX\ 6GXÊQJNKXQJQKQWÊSWUXQJWUQGOLÊXÔF[DFQK Tráön Nguyãn Phong• 6GX£QJNKXQJQKQ QJLDQKRDWKDRWDFGOL£X• 6GX£QJNKXQJQKQ WX\EL¢QGOL£X• 6GX£QJNKXQJQKQ [X¢WNK XH[SRUWGOL£X• 6GX£QJNKXQJQKQ EDRP£WGOL£Xj WD£RNKXQJQKQED£QVGX£QJFXO£QKFRFXSKDSQKVDX CREATE VIEW view_name[(column_name [, column_name] .)] AS select_statement7URQJRVHOHFWBVWDWHPHQWODP¤WFXO£QK6(/(&7GXQJ WUX\[X¢WGOL£XWP¤WKD\QKLXEDQJ.KLWD£RNKXQJQKQFQOX\P¤WV¢L PVDX• 7QNKXQJQKQSKDLWXQWKHRFDFTXLWFYQKGDQKYDSKDLGX\QK¢W¢LYLP¡LQJLVGX£QJ• .KQJWK UDQJEX¤FFDFP£FQKFDFTXLWFFKRNKXQJQKQ• .KQJWK [\G£QJFKPX£FFKRNKXQJQKQ• 7URQJFXO£QK&5($7(9,(:NKQJFQWKL¢WSKDLFKQKWQF¤W7QFXDFDFF¤WFXQJQKNL XGOL£XFXDFKXQJVHWQJQJYLFDFF¤WWURQJGDQKVDFKFKR¤QFXDFXO£QK6(/(&7• %D£QSKDL[DFQKWQF¤WWURQJFXO£QK&5($7(9,(:WURQJFDFWUQJK¤SVDX− 0¡LF¤WFXDNKXQJQKQ¤FSKDWVLQKWP¤WEL XWKFV¢KR¤FP¤WKDPFDLVQKD\P¤WKQJ− +DLKD\QKLXF¤WFXDNKXQJQKQFRWUXQJWQ− %D£QPX¢QWKD\ LWQF¤WWURQJNKXQJQKQNKDFYLWQF¤WFXDEDQJFV9GX&XO£QKGL\VHEO¡LGRWQFXDF¤WWKNKQJ[DFQK¤F CREATE VIEW thongtin_nv AS SELECT manv,hoten,datediff(year,ngaysinh,getdate()),tendv FROM nhanvien,donvi WHERE nhanvien.madv=donvi.madvj FXO£QKWUQFRWK WK£FKL£Q¤FED£QSKDL£WWQFKRFDFF¤WFXDNKXQJQKQQKVDX CREATE VIEW thongtin_nv(manv,hoten,tuoi,donvi) [...]... một giá trị nguyên được gọi là một trạng thái trả về Giá trị này chỉ ra cho biết thủ tục được thực hiện thành công hay gặp lỗi và nguyên nhân của lỗi (SQL Server đ định nghĩa sẵn một tập các giá trị trả về, các giá trị này nằm trong khoảng [-99;0]; trong đó giá trị trả về bằng 0 tức là việc thực hiện thủ tục thành công, các giá trị còn lại cho biết nguyên do khi bị lỗi) Giá trị trả về do người sử dụng... trạng thái thông qua đó có thể xác định việc thực thi thủ tục là thành công hay bị lỗi Việc sử dụng các thủ tục lưu trữ bên trong cơ sở dữ liệu sẽ mang lại những lợi ích sau: Thủ tục lưu trữ cho phép module hoá công việc, tạo điều kiện thuận lợi cho việc thực hiện các thao tác trên dữ liệu Thủ tục lưu trữ được phân tích, tối ưu và biên dịch khi tạo ra nên việc thực thi chúng nhanh hơn nhiều so với việc... hơn nhiều so với việc sử dụng một tập các câu lệnh giao tác SQL theo những cách thông thường Thủ tục lưu trữ cho phép chúng ta thực hiện cùng một yêu cầu bằng một câu lệnh đơn giản thay vì phải sử dụng nhiều dòng lệnh SQL Điều này sẽ làm giảm thiểu sự lưu thông trên mạng Thay vì cấp phát quyền trực tiếp cho người sử dụng trên các câu lệnh SQL, ta có thể cấp phát quyền cho người sử dụng thông qua các... trỗnh thổỷc haỡnh SQL Chổồng 4: THU TUC LặU TRặẻ VAè TRIGGER Các thủ tục lưu trữ là một trong những đối tượng cơ sở dữ liệu Có thể xem chúng tương tự như những thủ tục trong các ngôn ngữ lập trình Mỗi một thủ tục lưu trữ có thể có các khả năng sau: Nhận các tham số đầu vào, thực thi các câu lệnh bên trong thủ tục và trả về các giá trị Bên trong mỗi thủ tục có thể chứa các câu lệnh nhằm thực hiện các... 1.9.1 Phép toán nối Một câu lệnh nối (join statament) thực hiện các công việc sau đây: Xác định một cột từ mỗi bảng So sánh các giá trị trong những cột này theo từng dòng Kết hợp các dòng có những giá trị thoả mn điều kiện thành những dòng mới Ví dụ 2.13: Câu lệnh dưới đây cho biết họ tên, địa chỉ của các nhân viên và tên đơn vị mà mỗi nhân viên thực thuộc: SELECT hoten, diachi, tendonvi FROM nhanvien,... hơn (nếu có thể được) Tiêu đề cột trong kết quả của phép hợp sẽ là tiêu đề cột được chỉ định trong truy vấn đầu tiên 1.8.2 Sử dụng UNION với các giao tác SQL khác Các nguyên tắc sau phải được tuân theo khi sử dụng phép hợp với các câu lệnh giao tác SQL khác: Truy vấn đầu tiên trong câu lệnh UNION có thể có INTO để tạo một bảng từ kết quả cuối cùng Mệnh đề ORDER BY và COMPUTE dùng để xác định thứ tự...Giaùo trỗnh thổỷc haỡnh SQL AS SELECT manv,hoten,datediff(year,ngaysinh,getdate()),tendv FROM nhanvien,donvi WHERE nhanvien.madv=donvi.madv Trỏửn Nguyón Phong Chổồng 2: NGN NGặẻ THAO TAẽC Dặẻ LIU Để truy xuất dữ liệu từ các dòng và các cột của một hay nhiều bảng, khung nhìn, ta sử dụng câu lệnh SELECT Câu lệnh này có thể dùng để thực hiện phép chọn (tức là truy xuất một tập con... Nguyễn Thị Hoa Phòng kế toán 2.11 avg =========== 2.11 Lê Hoài Nam Phòng Tổ chức 1.86 Hoàng Nam Phong Phòng Tổ chức 3.21 avg =========== 2.535 Trần Nguyên Phong Phòng điều hành 1.92 Nguyễn Hữu Tình Phòng điều hành 1.92 avg =========== 1.92 Nguyễn Trung Kiên Phòng tài vụ 1.86 Trỏửn Nguyón Phong avg =========== 1.86 Khi sử dụng mệnh đề COMPUTE BY cần tuân theo các qui tắc dưới đây: Từ khóa... ta gọi msp_list;2 mà không có tham số thì thủ tục sẽ lấy tham số mặc định là Nguyễn Văn A cho @bten Giá trị mặc định có thể NULL Trong trường hợp này, nếu người sử dụng không cung cấp tham số, SQL Server sẽ thi hành thủ tục theo các tham số khác Ví dụ 4.3: Với câu lệnh CREATE PROC sp_list;3 @bten char(20)=NULL,@bluong float AS SELECT * FROM nhanvien WHERE hoten=@bten AND hsluong=@bluong Ta thể gọi thủ... trỗnh thổỷc haỡnh SQL FROM donvi WHERE nhanvien.madonvi = donvi.madonvi AND donvi.dienthoai ='848484' Trỏửn Nguyón Phong Chổồng 3: NGN NGặẻ IệU KHIỉN GRANT ALL | statement [, ,statementN ] TO account [, ,accountN] GRANT ALL | permission [, ,permissionN] ON table_name |view_name [(column1 [, ,columnN])] |ON stored_procedure TO account [, ,accountN] Giaùo trỗnh thổỷc haỡnh SQL GRANT CREATE . Sử dụng UNION với các giao tác SQL khácCác nguyên tắc sau phải được tuân theo khi sử dụng phép hợp với các câu lệnhgiao tác SQL khác: Truy vấn đầu tiên. mn điều kiện thành những dòngmới.Ví dụ 2.13: Câu lệnh dưới đây cho biết họ tên, địa chỉ của các nhân viên và tênđơn vị mà mỗi nhân viên thực thuộc:SELECT

Ngày đăng: 03/11/2012, 09:29

Xem thêm: Giáo trình thực hành sql

w