intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Tổng quan về ngôn ngữ SQL

Chia sẻ: Đinh Gấu | Ngày: | Loại File: PDF | Số trang:9

119
lượt xem
6
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài viết nhằm giới thiệu đến bạn đọc những nội dung về SQL, lịch sử phát triển của SQL, đặc điểm của SQL và đối tượng làm việc, các kiểu dữ liệu cơ bản của SQL, các tập lệnh cơ bản của SQL. Với các bạn đang học chuyên ngành Công nghệ thông tin thì đây là tài liệu tham khảo hữu ích dành cho các bạn.

Chủ đề:
Lưu

Nội dung Text: Tổng quan về ngôn ngữ SQL

  1. Tæng quan vÒ ng«n ng÷ sql 1 Tổng Quan Về SQL I_Giíi thiÖu chung vÒ SQL Comment [none1]: 1>.SQL lµ g×? -SQL lµ viÕt t¾t cña Structure Query Language,nã lµ mét c«ng cô qu¶n lý d÷ liÖu ®-îc sö dông phæ biÕn ë nhiÒu lÜnh vùc .HÇu hÕt c¸c ng«n ng÷ bËc cao ®Òu cã tr×nh hç trî SQL nh- Visual BASic,Oracle,Visual C... Trong Oracle tÊt c¶ c¸c ch-¬ng tr×nh vµ ng-êi sö dông ph¶i sö dông SQL ®Ó truy nhËp vµo d÷ liÖu trong CSDL cña Oracle. C¸c ch-¬ng tr×nh øng dông vµ c¸c c«ng cô Oracle cho phÐp ng-êi sö dông truy nhËp tíi CSDL mµ kh«ng cÇn sö dông trùc tiÕp SQL. Nh-ng nh÷ng øng dông ®ã khi ch¹y ph¶i sö dông SQL. 2>.LÞch sö ph¸t triÓn: -SQL ®-îc ph¸t triÓn tõ ng«n ng÷ SEQUEL2 bëi IBM theo m« h×nh Codd t¹i trung t©m nghiªn cøu cña IBM ë California ,vµo nh÷ng n¨m 70 cho hÖ thèng QTCSDL lín. -§Çu tiªn SQL ®-îc sö dông trong c¸c ng«n ng÷ qu¶n lý CSDL vµ ch¹y trªn c¸c m¸y ®¬n lÎ. Song do sù ph¸t triÓn nhanh chãng cña nhu cÇu x©y dùng nh÷ng CSDL lín theo m« h×nh kh¸ch chñ( trong m« h×nh nµy toµn bé CSDL ®-îc tËp trung trªn m¸y chñ (Server)). Mäi thao t¸c xö lý d÷ liÖu ®-îc thùc hiÖn trªn m¸y chñ b»ng c¸c lÖnh SQL m¸y tr¹m chØ dïng ®Ó cËp nhËp hoÆc lÊy th«ng tin tõ m¸y chñ). Ngµy nay trong c¸c ng«n ng÷ lËp tr×nh bËc cao ®Òu cã sù trî gióp cña SQL. NhÊt lµ trong lÜnh vùc ph¸t triÓn cña Internet ng«n ng÷ SQL cµng ®ãng vai trß quan träng h¬n. Nã ®-îc sö dông ®Ó nhanh chãng t¹o c¸c trang Web ®éng.. SQL ®· ®-îc viÖn tiªu chuÈn quèc gia Mü (ANSI)vµ tæ chøc tiªu chuÈn quèc tÕ (ISO) chÊp nhËn nh- mét ng«n ng÷ chuÈn cho CSDL quan hÖ .Nh-ng cho ®Õn nay chuÈn nµy ch-a ®-a ra ®ñ 100%.Nªn c¸c SQL nhóng trong c¸c ng«n ng÷ lËp tr×nh kh¸c nhau ®· ®-îc bæ xung më réng cho SQL chuÈn cho phï hîp víi c¸c øng dông cña m×nh.Do vËy cã sù kh¸c nhau râ rµng gi-· c¸c SQL. 3>.§Æc ®iÓm cña SQL vµ ®èi t-îng lµm viÖc: a>§Æc ®iÓm: -SQL lµ ng«n ng÷ tùa tiÕng Anh. -SQL lµ ng«n ng÷ phi thñ tôc,Nã kh«ng yªu cÇu ta c¸ch thøc truy nhËp CSDL nh- thÕ nµo TÊt c¶ c¸c th«ng b¸o cña SQL ®Òu rÊt dÔ sö dông vµ Ýt kh¶ n¨ng m¾c lçi . -SQL cung cÊp tËp lÖnh phong phó cho c¸c c«ng viÖc hái ®¸p DL +ChÌn,cËp nhËt ,xo¸ c¸c hµng trong mét quan hÖ +T¹o,söa ®æi,thªm vµ xo¸ c¸c ®èi t-îng trong cña CSDL. Ph¹m Minh Quý - Database 1
  2. Tæng quan vÒ ng«n ng÷ sql 2 +§iÒu khiÓn viÖc truy nhËp tíi c¬ së d÷ liÖu vµ c¸c ®èi t-îng cña CSDL ®Ó ®¶m b¶o tÝnh b¶o mËt cña c¬ së DL +®¶m b¶o tÝnh nhÊt qu¸n vµ sù rµng buéc cña CSDL. -Yªu cÇu duy nhÊt ®Ó sö dông cho c¸c hái ®¸p lµ ph¶i n¾m v÷ng ®-îc c¸c cÊu tróc CSDL cña m×nh. b>§èi t-îng lµm viÖc cña SQL: -Lµ c¸c b¶ng ( tæng qu¸t lµ c¸c quan hÖ )d÷ liÖu hai chiªï .C¸c b¶ng nµy bao gåm mét hoÆc nhiÒu cét vµ hµng.C¸c cét gäi lµ c¸c tr-êng ,c¸c hµng gäi lµ c¸c b¶n ghi.Cét víi tªn gäi vµ kiÓu d÷ liÖu (kiÓu dl cña mçi cét lµ duy nhÊt)x¸c ®Þnh t¹o nªn cÊu tróc cña b¶ng (Ta cã thÓ dïng lÖnh Desc[ribe] TABLE-name ®Ó xem cÊu tróc cña b¶ng ,phÇn tuú chän[] cã thÓ ®-îc bá trong Oracle).Khi b¶ng ®· ®-îc tæ chøc hÖ thèng cho mét môc ®Ých nµo ®ã cã mét CSDL 4>.C¸c kiÓu d÷ liÖu c¬ b¶n cña SQL: -Integer:Sè nguyªn:-2147483648 ®Õn 2147483647 -Smallinteger:-32768 ®Õn 32767 -Number(n,p):sè thËp ph©n ®é dµi tèi ®a lµ n kÓ c¶ p ch÷ sè thËp ph©n(kh«ng tÝnh dÊu chÊm). -char (n):x©u cã ®é dµI cè ®Þnh lµ n nLÖnh SELECT: Ph¹m Minh Quý - Database 2
  3. Tæng quan vÒ ng«n ng÷ sql 3 *MÖnh ®Ò SELECT t-¬ng øng víi to¸n tö project(phÐp chiÕu ) cña ®¹i sè quan hÖ.Nã ®-îc dïng ®Ó t¹o danh s¸ch c¸c thuéc tÝnh mµ ta mong muèn.Khèi lÖnh SELECT gåm cã ba mÖnh ®Ò chÝnh: +SELECT:x¸c ®Þnh néi dung cña c¸c cét cÊn ®-a ra. +FROM:danh s¸ch c¸c quan hÖ ®-îc quÐt qua +WHERE:øng víi mét kh¼ng ®Þnh lùa chän cña ®¹I sè quan hÖ.Nã lµ mét kh¼ng ®Þnh liªn quan ®Õn c¸c thuéc tÝnh cña quan hÖ xuÊt hiÖn trong mÖnh ®Ò FROM: -Mét hái ®¸p cu¶ SELECT th-êng cã d¹ng: SELECT [distinct]*/A1..An FROM r1..rm [WHERE p]; Trong ®ã : Ai lµ c¸c thuéc tÝnh rj lµ c¸c quan hÖ (cã thÓ lµ c¸c TABLEs,VIEWs..)Ta cã thÓ dïng c¸c bÝ danh cho c¸c Ai,rj. p:lµ ®IÒu kiÖn rµng buéc. ë ®©y WHERE cã thÓ cã hoÆc kh«ng. Dïng *®Ó chØ tÊt c¶ c¸c thuéc tÝnh cña c¸c quan hÖ ®-îc chän -Hái ®¸p nµy t-ong ®-¬ng víi biÓu diÔn sau trong quan hÖ: A1..An[S p(r1..rm)] -§Ó lo¹i bá c¸c bé gi¸ trÞ (c¸c hµng) trïng nhau ta thªm tõ kho¸ Distinct vµo sau SELECT (tr-íc ®©y SQL thªm tõ kho¸ unique). -Trong kh¼ng ®Þnh p:ta cã thÓ dïng c¸c liªn tõ logic and,or,not khi kÕt hîp nhiÒu ®iÒu kiÖn VD1:§Ó hiÖn c¸c th«ng tin vÒ mét nh©n viªn nµo ®ã gåm(#,Hä_tªn,N_sinh,Chøc_vô,®Þa_chØ,l-¬ng) SELECT Distinc * FROM R1; *§-a ra (hä_tªn,Nsinh,chøc_vô,®Þa_chØ,l-¬ng,tªn_phßng) víi ®IÒu kiÖn l-¬ng>500.000 vµ ®ia_chØ kh«ng ë Hµ néi SELECT Ho_tªn,Nsinhn,chøc_vô,®Þa_chØ,l-¬ng,tªn_phßng FROM Nh©nviªn R1,Liªnkªt R2,Phong R3 WHERE (R1.l­¬ng>500.000) and (not R1.®Þa_chØ=’Hµ néi’) and (R1.#NV=R2.#NV) and (R2.#MP=R3.#MP); -Trong lÖnh trªn ta ®· dïng R1,R2,R3 lµm bÝ danh cho Nh©nviªn, Liªnkªt,Phong C¸c bÝ danh ®ã chØ cã t¸c dông trong mét c©u lÖnh C¸c vÝ dô sau nµy ta dïng R1,R2,R3 ®Ó thay cho c¸c b¶ng trªn cho gän Cã 4 to¸n tö hay ®-îc dïng víi c¸c kiÓu d÷ liÖu.Trong mÖnh ®Ò WHERE lµ: In (not In) Between..and..(not between..) Like(not like) Ph¹m Minh Quý - Database 3
  4. Tæng quan vÒ ng«n ng÷ sql 4 Is null (not is Null). +To¸n tö In (not In):dïng ®Ó kiÓm tra gi¸ trÞ trong(kh«ng n»m trong) mét danh s¸ch ®-îc chØ ra. VÝ d ô :®-a ra nh÷ng ng-êi cã ®ia_chØ ë Hµ néi vµ Hµ t©y. SELECT * FROM R1 WHERE ®ia_chØ in (‘Hµ néi’,’Hµ t©y’); +To¸n tö Between..and..(not ..) : kiÓm tra gi¸ trÞ n»m gi÷a (kh«ng n»m gi÷a) mét ph¹m vi ®-îc chØ ra. VD :®-a ra nh÷ng ng-êi cã l-¬ng n»m trong kho¶ng (500.000-:- 1.000.000). SELECT * FROM R1 WHERE l-¬ng between 500.000 and 1.000.000; +To¸n tö like (not like):dïng ®Ó kiÓm tra nh÷ng gi¸ trÞ gièng (kh«ng gièng) víi gi¸ tri sau like,th-êng sö dông víi x©u ký tù vµ khi ta kh«ng biÕt chÝnh x¸c gi¸ trÞ cÇn t×m kiÕm hoÆc gi¸ trÞ cÇn t×m kiÕm gièng mét mÉu nµo ®ã.Trong SQL ng­êi ta sö dông ký hiÖu % cho x©u con vµ ‘_’cho 1 ký tù bÊt kú. VD:T×m nh÷ng ng-êi cã tªn mµ cã ký tù ®Çu tiªn bÊt kú,ký tù tiÒp theo lµ OA vµ tiÕp theo lµ d·y ký tù bÊt kú: SELECT *FROM R1 WHERE hoten=’_OA%’; +To¸n tö Is Null (not is Null):kiÓm tra cho c¸c gi¸ trÞ rçng (kh«ng rçng); VD:§-a ra tÊt c¶ nh÷ng nh©n viªn mµ ®· cËp nhËt ®Þa chØ SELECT *FROM R1 WHERE Dia_chi Not Is Null; -C¸c hµm hay ®-îc sö dông trong mÖnh ®Ò SELECT: +AVG:tÝnh gi¸ trÞ trung b×nh cña mét hoÆc nhiÒu tr-êng bá qua c¸c gi¸ trÞ rçng. VD:tÝnh l-¬ng TB cña c¬ quan: SELECT AVG(l-¬ng) FROM R1; +Count:®-îc dïng ®Ó ®Õm c¸c bé (hµng) VD:§IÓm tæng sè b¶n ghi tõ R1 cã l-ong>500.000 SELECT count(*) FROM R1 WHERE l-¬ng>500.000 +Hµm Max:t×m gi¸ trÞ lín nhÊt cña biÓu thøc: VD:t×m ng-êi cã l-¬ng lín nh¸t trong R1 cã ®Þa chØ ë Hµ T©y SELECT Max(l­¬ng) FROM R1 WHERE ®Þa_chØ=’Hµ_t©y’; +Hµm Min:t×m gi¸ trÞ nhá nhÊt cña biÓu thøc: VD:t×m ng-êi cã l-¬ng nhá nh¸t trong R1 cã ®Þa chØ ë Hµ T©y SELECT Min(l-¬ng) FROM R1 WHERE ®Þa_chØ=’Hµ_t©y’; +Hµm Sum:tÝnh tæng gi¸ trÞ bá qua gi¸ trÞ rçng. VD:TÝnh tæng l-¬ngcña c¬ quan SELECT Sum(l-¬ng) FROM R1; -NgoµI 3 mÖnh ®Ò chÝnh trªn ta cßn cã thÓ : +T×m kiÕm theo nhãm nhê mÖnh ®Ò GROUP BY®-îc sö dông®Ó ph©n chia c¸c bé thµnh c¸c nhãm nhá . VD:§-a ra danh s¸ch c¸c nh©n viªn theo nhãm ®Þa chØ Ph¹m Minh Quý - Database 4
  5. Tæng quan vÒ ng«n ng÷ sql 5 SELECT *FROM R1 Group by §ia_chØ; Th-êng ®i víi mÖnh ®Ò Group by lµ mÖnh ®Ò Having by sö dông ®Ó chØ ra nh÷ng h¹n chÕ cña c¸c nhãm ®-îc hiÓn thÞ.Chó ý r»ng mÖnh ®Ò Having by chØ ®i víi Group by vµ ®iÒu kiÖn cña nã chØ t¸c ®éng ®Õn tõng nhãm b¶n ghi ®-îc chØ ra ë mÖnh ®Ò Group by chø kh«ng t¸c ®éng ®Õn toµn b¶ng. VD: §-a ra danh s¸ch c¸c nhãm nh©n viªn cïng chøc vô vµ cã l-¬ng >500.000 SELECT * FROM R1 Group by chøc_vô Having by l-¬ng>500.000 -S¾p xÕp theo mét hoÆc nhiÒu tr-êng ta dïng mÖnh ®Ò ORDER BY (colum1/[ASc|Desc] ..) +ASc s¾p xÕp theo chiÒu t¨ng (ngÇm ®Þnh) +Desc s¾p xÕp theo chiÒu gi¶m VD S¾p xÕp nh©n viªn theo chiÒu gi¶m theo l-¬ng ,nÕu cïng møc l-¬ng th× theo s¾p xÕp theo chiÒu xÕp theo chiÒu t¨ng ho_tªn SELECT * FROM R1 ORDER BY l-¬ng/Desc,ho_tªn; 2>Nhãm lÖnh INSERT,UPDATE,DELETE: *INSERT: Dïng ®Ó chÌn dl vµo mét quan hÖ chóng ta cã thÓ t¹o ra 1 bé ®Ó chÌn vµo hoÆc mét tËp c¸c bé tõ hái ®¸p SELECT ®Ó chÌn vµo Có ph¸p cña lÖnh: INSERT INTO R[A1..An] VALUES(vl1..) VD:chÌn 1 hµng (‘020’,’NguyÔn träng NghÜa’,B¶o vÖ’,’Hµ néi’,’800.000’)vµo R1 INSERT INTO R1 VALUES (‘020’,’NguyÔn träng NghÜa’,B¶o vÖ’,’Hµ néi’,800.000); *UPDATE Dïng ®Ó sö ®æi gi¸ trÞ cña mét ho¨c nhiÒu bé ®· tån t¹i trong quan hÖ có ph¸p cu¶ lÖnh UPDATE R SET..[WHERE p] VD:-l-¬ng cña tÊt c¶ c¸c nh©n viªn cña c¬ quan cïng t¨ng 5% UPDATE R1 SET l-¬ng=l-¬ng*1,05 -chØ t¨ng l-¬ng cña nh÷ng ng-êi cã l-¬ng
  6. Tæng quan vÒ ng«n ng÷ sql 6 DELETE FROM R1; Chó ý:lÖnh DELETE chØ thao t¸c víi 1 quan hÖ.Muèn huû c¸c bé tõ nhiÒu quan hÖ ta dïng DELETE cho mçi quan hÖ.LÖnh DELETE chØ ®¸nh dÊu c¸c b¶n ghi chø ch-a thùc sù xo¸ h¼n ,ta cã thÓ kh«i phôc l¹i ®-îc .§Ó xo¸ h¼n ta dung lÖnh COMMIT ,khi ®· ra lÖnh nµy ta kh«ng thÓ kh«i phôc l¹i ®-îc n÷a .Khi ch-a ra lÖnh COMMIT ta cã thÓ kh«i phôc l¹i b»ng c¸ch dïng lÖnh ROLLBACK. 3>Nhãm lÖnh CREATE,ALTER,DROP: a>LÖnh CREATE LÖnh nµy dïng ®Ó t¹o ra c¸c quan hÖ nh- TABLE,VIEW,INDEX *CREATE TABLE -B¶ng lµ mét cÊu tróc c¬ b¶n ®Ó cÊt gi÷ trong hÖ thèng quan hÖ.Cã khu«n d¹ng hai chiÒu gåm cã c¸c cét vµ hµng.Nãlµ yÕu tè c¬ b¶n cho c¸c thao t¸c kh¸c nhau.Cã thÓ nãi viÖc t¹o b¶ng lµ b-íc ®Çu tiªn quan träng nhÊt ®Ó thiÕt lËp CSDL. -Có ph¸p cña lÖnh nµy: CREATE TABLE table-name(colom_name type(size)..) Khi t¹o ra b¶ng chóng ta ph¶i chØ ra kiÓu d÷ liÖu cña cét vµ mçi cét chØ cã thÓ cã m«t kiÓu d÷ liªô duy nhÊt.Khi t¹o b¶ng ta cã thÓ ®-a ra c¸c rµng buéc C¸c rµng buéc cña c¸c tr-êng cã thÓ lµ : primary key,foreign ket ,unique,not null ... VD:t¹o b¶ng nh©n viªn CREATE TABLE NHAN_VIEN (#NV varchar(4) constraint NV_Primary key,ho_tªn Varchar(25),Ng_sinh date,chøcvô varchar(20),®ia_chØ varchar(30).l-¬ng number(7)); trong VD trªn ta t¹o ra mét rµng buéc lµ #NV ®-îc ®Þnh nghÜa lµ primary key -Ta còng cã thÓ t¹o ra b¶ng míi víi cÊu tróc vµ d÷ liÖu tõ 1 b¶ng kh¸c. Có ph¸p: CREATE TABLE TABLE_name[(colum_name..)]AS SELECT statement; VD:t¹o ra 1 b¶ng míi cã tªn lµ NVN (#NV,hä_tªn) tõ b¶ng NHAN_VIEN CREATE TABLE NVN AS SELECT #NV,hä_tªn FROM NHAN_VIEN; *CREATE VIEW: -VIEWs gièng nh- nh÷ng window mµ th«ng qua nh÷ng window nµy d÷ liÖu cã thÓ ®-îc xem hoÆc thay ®æi. Nã cã thÓ ®-îc t¹o ra dùa trªn mét hay nhiÒu b¶ng trong CSDL.Nã lµ mét b¶ng ¶o kh«ng tån t¹i thùc sù trong CSDL.Nh-ng nã cã thÓ ®-îc truy nhËp nh- lµ c¸c b¶ng th«ng th-êng.Ta cã thÓ nhËn ®-îc c¸c hµng tõ VIEW víi c¸c lÖnh SELECT vµ trong hÇu hÕt c¸c tr-êng hîp cña viÖc UPDATE,INSERT,DELETE hµng tõ CSDL th«ng qua VIEW.Cã mét vµI tr-êng hîp kh«ng cho phÐp UPDATE tõ CSDL. Ph¹m Minh Quý - Database 6
  7. Tæng quan vÒ ng«n ng÷ sql 7 -ViÖc sö dông VIEW cã rÊt nhiÒu h÷u Ých trong viÖc: +H¹n chÕ viÖc truy nhËp CSDL .SELECT tõ mét VIEW cã thÓ hiÓn thÞ phÇn h¹n chÕ cña CSDL mét c¸ch nhanh chãng. +Cho phÐp ng-êi dïng t¹o ra nh÷ng hái ®¸p ®¬n gi¶n ®Ó nhËn ®-îc kÕt qu¶ tõ nh÷ng hái ®¸p phøc t¹p mµ kh«ng cÇn biÕt c¸ch thøc nèi c¸c b¶ng nh- thÕ nµo. +Cung cÊp c¸c phÇn tö d÷ liÖu ®éc lËp cho ng-êi sö dông vµ c¸c ch-ong tr×nh viÕt øng dông dÉn ®Õn ®¶m b¶o cho viÖc b¶o mËt d÷ liÖu ,che dÊu d÷ liÖu nµo ®ã khái mét user nµo ®ã. Có ph¸p : CREATE [or REPLACE/FORCE] VIEW view_name [colum..] AS Query,[with check option] -OR REPLACE:cho phÐp mét VIEW ®-îc t¹o ra thËm chÝ nÕu mét VIEW ®· tån t¹i cã cïng tªn nh- vËy.Do ®ã nã sÏ thay thÕ VIEW cò. -FORCE:cho phÐp t¹o ra VIEW thËm chÝ c¸c b¶ng c¬ së ch-a tån t¹i nh-ng c¸c b¶ng ph¶i tån t¹i tr-íc khi VIEW ®ã ®-îc sö dông -MÖnh ®Ò WITH CHECK OPTION:chØ ra r»ng viÖc INSERT,UPDATE thùc hiÖn th«ng qua VIEW lµ kh«ng cho phÐp. VD: T¹o VIEW cã tªn NV_phong tõ R1,R2,R3 gåm c¸c tr-êng Hä_tªn,phßng CREATE VIEW NV_phong AS SELECT hotªn,tªnphong FROM R1,R2,R3 WHERE (R1.#NV=R2.#NV)and (R2.#MP=R3.#MP) with check option; *CREATE INDEX B¶ng chØ sè lµ mét ®èi t-îng ®Æc biÖt ®-îc t¹o ra ®Ó cung cÊp cho viÖc truy nhËp tíi b¶ng trong CSDL mét c¸ch nhanh chãng Có ph¸p: CREATE INDEX index_name ON table(colum) VD: CREATE INDEX Nh©n _ vien_id ON NHAN_VIEN (Hä_tªn); b> LÖnh ALTER -Dïng ®Ó hoÆc lµ thªm mét hay nhiÒu tr-êng vµo b¶ng hoÆc söa ®æi mét cét hiÖn t¹i.SQL ANSI chuÈn kh«ng cho phÐp huû bá c¸c cét. -Có ph¸p: ALTER TABLE TABLE_name ADD | MODIFY | DROP option (colum Datatype..) +ADD:thªm cét míi +MODIFY:söa ®æi cét +DROP option xo¸ bá c¸c rµng buéc VD1:thªm tr-êng gia ®×nh kiÓu char(1) vµo R1 ALTER TABLE R1 ADD gia ®×nh char(1); VD2:Thay ®æi tr-êng §Þa_chØ Varchar(30) trong R1 thµnh §Þa_ChØ(20): ALTER TABLE R1 MODIFY §Þa_ChØ varchar(20); Ph¹m Minh Quý - Database 7
  8. Tæng quan vÒ ng«n ng÷ sql 8 VD3:Huû bá rµng buéc tr-êng kho¸ #NV trong R1 ALTER TABLE R1 DROP constraint NV_prim c>LÖnh DROP -Dïng ®Ó xo¸ bá mét quan hÖ,khi ta xo¸ bá mét b¶ng c¬ së th× tÊt c¶ c¸c VIEW,INDEX ®-îc ®Þnh nghÜa trªn b¶ng ®ã sÏ bÞ xo¸ bá . Có phap: DROP TABLE/VIEW/INDEX Name; VD:Xãa bá Nh©n_viªn_id; DROP INDEX Nh©n_viªn_id; 4>TËp lÖnh GRANT,REVOKE: *§Ó kiÓm tra quyÒn truy nhËp CSDL dïng lÖnh GRANT Có ph¸p: GRANT privileges ON object TO (user/public)[WITH GRANT OPTION] -c¸c quyÒn (privileges) truy nhËp CSDL: +Read(®äc) +SELECT(chän) +write(ghi) +INSERT(bæ sung) +UPDATE(söa ®æi) +DELETE,run. -§èi t-îng (object) :lµ tªn c¸c quan hÖ hoÆc tªn c¸c ch-¬ng tr×nh. -Tªn nguêi sö dông:Tªn cña mét ng-êi ,mét nhãm ng-êi hoÆc danh s¸ch ng-êi public:cho tÊt c¶ mäi ng-êi cïng ®-îc sö dông. -Tõ kho¸ :with grant OPTION:®¶m b¶o ®Ó ng-êi sö dông cã thÓ tiÕp tôc trao quyÒn sö dông cho ng-êi kh¸c. VD:cho phÐp SELECT,INSERT,UPDATE trªn b¶ng R1 cho NghÜa,Kh«i GRANT SELECT,INSERT,UPDATE ON R1 TO NghÜa,Kh«i with grant option; NghÜa,Kh«i cã thÓ trao quyÒn trªn cho ng-êi kh¸c. *§Ó huû bá quyÒn truy nhËp Có ph¸p:REVOKE privileges ON object FROM user VD:®Ó huû bá quyÒn UPDATE tõ NghÜa: REVOKE UPDATE ON R1 FROM NghÜa; Lêi kÕt thóc: Trong bµi nµy t«i muèn tr×nh bµy víi c¸c b¹n vÒ ng«n ng÷ SQL chuÈn ®Ó c¸c nhãm kh¸c cã thÓ tham kh¶o .Nh-ng do tµi liÖu vª SQL chuÈn kh«ng cã ,mµ t«i chØ tham kh¶o c¸c tµi liÖu vÒ SQL sö dông cho truy nhËp CSDL cña ORACLE cho nªn trong khi tr×nh bµy cã khi " L¹m dông" vÒ SQL sö dông trong ORACLE . RÊt mong c¸c b¹n gãp ý kiÕn! Ph¹m Minh Quý - Database 8
  9. Tæng quan vÒ ng«n ng÷ sql 9 Ng-êi tr×nh bÇy : Ph¹m Minh Quý_K40B Tµi liÖu tham kh¶o : +INTRODUCTION TO ORACLE : SQL PL/SQL AND SQL*PLUS +UNDERSTANDING ORACLE Ph¹m Minh Quý - Database 9
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2