¹óÖÝ´óѧ¼ÆËã»úÑо¿Éú¸´ÊÔÊý¾Ý¿âϵ֪ʶµãÕûÀí¹éÄÉ ÏÂÔØ±¾ÎÄ

ÓÉÓÚÊÓͼÖеÄÊý¾Ý²»»áʵ¼Ê´æ´¢£¬ËùÒÔ¶¨ÒåÊÓͼʱ¿É¸ù¾ÝÓ¦ÓõÄÐèÒª£¬ÉèÖÃһЩÅÉÉúÊôÐÔÁлòÐéÄâÁУ¬ÒÔ±ãÓÚ²éѯºÍͳ¼Æ¡£

ÒÔ SELECT * ·½Ê½´´½¨µÄÊÓͼ¿ÉÀ©³äÐԲӦ¾¡¿ÉÄܱÜÃâ ¡£

ȱµã£ºÐ޸Ļù±íStudentµÄ½á¹¹ºó£¬Student±íÓëF_StudentÊÓͼµÄÓ³Ïó¹ØÏµ±»ÆÆ»µ£¬µ¼Ö¸ÃÊÓͼ²»ÄÜÕýÈ·¹¤×÷¡£

ɾ³ýÊÓͼDROP VIEW <ÊÓͼÃû>£»

¸ÃÓï¾ä´ÓÊý¾Ý×ÖµäÖÐɾ³ýÖ¸¶¨µÄÊÓͼ¶¨Òå¡£Èç¹û¸ÃÊÓͼÉÏ»¹µ¼³öÁËÆäËûÊÓͼ£¬Ê¹ÓÃCASCADE¼¶ÁªÉ¾³ýÓï¾ä£¬°Ñ¸ÃÊÓͼºÍÓÉËüµ¼³öµÄËùÓÐÊÓͼһÆðɾ³ý ¡£É¾³ý»ù±íʱ£¬Óɸûù±íµ¼³öµÄËùÓÐÊÓͼ¶¨Òå¶¼±ØÐëÏÔʽµØÊ¹ÓÃDROP VIEWÓï¾äɾ³ý¡£

Àý£ºÉ¾³ýÊÓͼBT_S£º

DROP VIEW BT_S; ɾ³ýÊÓͼIS_S1£º¾Ü¾øÖ´ÐÐ

¼¶ÁªÉ¾³ý£ºDROP VIEW IS_S1 CASCADE;

£¨2£© ²éѯÊÓͼ£º²éѯÊÓͼÓë²éѯ»ù±¾±íÏàͬ,ÊÓͼ¶¨Òåºó£¬¾Í¿ÉÒÔÏñ¶Ô´ý»ù±¾±íÒ»Ñù¶ÔÊÓͼ½øÐвéѯ£¨SELECT£©²Ù×÷¡£

ÊÓͼÏû½â·¨£¨View Resolution£©½øÐÐÓÐЧÐÔ¼ì²é£¬¼ì²é²éѯµÄ±í¡¢ÊÓͼµÈÊÇ·ñ´æÔÚ¡£Èç¹û´æÔÚ£¬Ôò´ÓÊý¾Ý×ÖµäÖÐÈ¡³öÊÓͼµÄ¶¨Òå £»×ª»»³ÉµÈ¼ÛµÄ¶Ô»ù±¾±íµÄ²éѯ£¬°ÑÊÓͼ¶¨ÒåÖеÄ×Ó²éѯÓëÓû§µÄ²éѯ½áºÏÆðÀ´£»Ö´ÐÐÐÞÕýºóµÄ²éѯ¡£

Àý£ºÔÚÐÅϢϵѧÉúµÄÊÓͼÖÐÕÒ³öÄêÁäСÓÚ20ËêµÄѧÉú SELECT Sno£¬Sage FROM IS_Student WHERE Sage<20£» ÊÓͼÏû½âת»»ºóµÄ²éѯÓï¾äΪ£º SELECT Sno£¬Sage FROM Student

WHERE Sdept= 'IS' AND Sage<20£»

Àý£ºÔÚS_GÊÓͼÖвéѯƽ¾ù³É¼¨ÔÚ90·ÖÒÔÉϵÄѧÉúѧºÅºÍƽ¾ù³É¼¨ SELECT * FROM S_G

WHERE Gavg>=90£»

S_GÊÓͼµÄ×Ó²éѯ¶¨Ò壺

CREATE VIEW S_G (Sno£¬Gavg) AS

SELECT Sno£¬AVG(Grade) FROM SC

GROUP BY Sno£» £¨3£© ¸üÐÂÊÓͼ

DBMSʵÏÖÊÓͼ¸üÐµķ½·¨£º×ª»»Îª¶Ô»ù±¾±íµÄ¸üС£ÊÓͼÏû½â·¨£¨View Resolution£©¡£ Ö»ÓжԳÉΪ¡°¿É¸üС±ÊÓͼ²ÅÄܽøÐиüвÙ×÷¡£ SQL2¶Ô¡°¿É¸üС±ÊÓͼ¸ø³öÕýʽ¶¨Ò壺´Ó¹ØÏµRÑ¡³öijЩÊôÐÔ£¨ÓÃselect ¶ø²»ÊÇ select distinct£©¶¨ÒåµÄÊÓͼ£¬R±¾Éí¿ÉÒÔÊǿɸüеÄÊÓͼ£»WhereÖв»ÄÜǶÌ×Éæ¼°RµÄ×Ó²éѯ£»Select±ØÐë°üÀ¨×ã¹»¶àµÄÊôÐÔ£¬ËùÓÐnot nullµÄÊôÐÔ±ØÐë°üÀ¨¡£

¶ÔÓÚÊÓͼԪ×éµÄ¸üвÙ×÷£¨INSERT¡¢DELETE¡¢UPDATA£©£¬ÓÐÒÔÏÂÈýÌõ¹æÔò£º

Èç¹ûÒ»¸öÊÓͼÊÇ´Ó¶à¸ö»ù±¾±íʹÓÃÁª½Ó²Ù×÷µ¼³öµÄ£¬ÄÇô²»ÔÊÐí¶ÔÕâ¸öÊÓͼִÐиüвÙ×÷¡£

17

Èç¹ûÔÚµ¼³öÊÓͼµÄ¹ý³ÌÖУ¬Ê¹ÓÃÁË·Ö×éºÍ¾Û¼¯º¯Êý²Ù×÷£¬Ò²²»ÔÊÐí¶ÔÕâ¸öÊÓͼִÐиüвÙ×÷¡£ ÐÐÁÐ×Ó¼¯ÊÓͼ¿ÉÒÔÖ´ÐиüвÙ×÷¡£

ÔÚSQL2ÖУ¬ÔÊÐí¸üеÄÊÓͼÔÚ¶¨Òåʱ£¬±ØÐë¼ÓÉÏ¡°WITH CHECK OPTION¡±¶ÌÓï¡£DBMSÔÚ¸üÐÂÊÓͼʱ»á½øÐмì²é£¬·ÀÖ¹Óû§Í¨¹ýÊÓͼ¶Ô²»ÊôÓÚÊÓͼ·¶Î§ÄڵĻù±¾±íÊý¾Ý½øÐиüС£

Àý£º½«ÐÅϢϵѧÉúÊÓͼIS_StudentÖÐѧºÅ200215122µÄѧÉúÐÕÃû¸ÄΪ¡°Áõ³½¡±¡£ UPDATE IS_Student SET Sname= 'Áõ³½'

WHERE Sno= ' 200215122 '£» ת»»ºóµÄÓï¾ä£º UPDATE Student SET Sname= 'Áõ³½'

WHERE Sno= ' 200215122 ' AND Sdept= 'IS'£»

Àý£ºÏòÐÅϢϵѧÉúÊÓͼIS_SÖвåÈëÒ»¸öеÄѧÉú¼Ç¼£º200215129£¬ÕÔУ¬20Ëê INSERT

INTO IS_Student

VALUES(¡®95029¡¯£¬¡®ÕÔС¯£¬20)£» ת»»Îª¶Ô»ù±¾±íµÄ¸üУº INSERT

INTO Student(Sno£¬Sname£¬Sage£¬Sdept) VALUES(¡®200215129 '£¬'ÕÔÐÂ'£¬20£¬'IS' )£»

Àý£ºÉ¾³ýÐÅϢϵѧÉúÊÓͼIS_StudentÖÐѧºÅΪ200215129µÄ¼Ç¼ DELETE

FROM IS_Student

WHERE Sno= ' 200215129 '£» ת»»Îª¶Ô»ù±¾±íµÄ¸üУº DELETE

FROM Student

WHERE Sno= ' 200215129 ' AND Sdept= 'IS'£» ¸üÐÂÊÓͼµÄÏÞÖÆ£ºÒ»Ð©ÊÓͼÊDz»¿É¸üеģ¬ÒòΪ¶ÔÕâЩÊÓͼµÄ¸üв»ÄÜΨһµØÓÐÒâÒåµØ×ª»»³É¶ÔÏàÓ¦»ù±¾±íµÄ¸üС£¶ÔÆäËûÀàÐÍÊÓͼµÄ¸üв»Í¬ÏµÍ³Óв»Í¬ÏÞÖÆ£º

(1) ÈôÊÓͼÊÇÓÉÁ½¸öÒÔÉÏ»ù±¾±íµ¼³öµÄ£¬Ôò´ËÊÓͼ²»ÔÊÐí¸üÐÂ

(2) ÈôÊÓͼµÄ×Ö¶ÎÀ´×Ô×ֶαí´ïʽ»ò³£Êý£¬Ôò²»ÔÊÐí¶Ô´ËÊÓͼִÐÐINSERTºÍUPDATE²Ù×÷£¬µ«ÔÊÐíÖ´ÐÐDELETE²Ù×÷¡£

(3) ÈôÊÓͼµÄ×Ö¶ÎÀ´×Ô¼¯º¯Êý£¬Ôò´ËÊÓͼ²»ÔÊÐí¸üС£

(4) ÈôÊÓͼ¶¨ÒåÖк¬ÓÐGROUP BY×Ӿ䣬Ôò´ËÊÓͼ²»ÔÊÐí¸üС£ (5) ÈôÊÓͼ¶¨ÒåÖк¬ÓÐDISTINCT¶ÌÓÔò´ËÊÓͼ²»ÔÊÐí¸üС£ (6) ÈôÊÓͼ¶¨ÒåÖÐÓÐǶÌײéѯ£¬²¢ÇÒÄÚ²ã²éѯµÄFROM×Ó¾äÖÐÉæ¼°µÄ±íÒ²Êǵ¼³ö¸ÃÊÓͼµÄ»ù±¾±í£¬Ôò´ËÊÓͼ²»ÔÊÐí¸üС£

(7) Ò»¸ö²»ÔÊÐí¸üеÄÊÓͼÉ϶¨ÒåµÄÊÓͼҲ²»ÔÊÐí¸üР£¨4£© ÊÓͼµÄ×÷ÓÃ

1. ÊÓͼÄܹ»¼ò»¯Óû§µÄ²Ù×÷£¬¾Û½¹ÓÚËù¹ØÐĵÄÊý¾ÝÉÏ¡£ 2. ÊÓͼʹÓû§ÄÜÒÔ¶àÖֽǶȿ´´ýͬһÊý¾Ý£¬Ôö¼ÓÁé»îÐÔ ¡£ 3. ÊÓͼ¶ÔÖØ¹¹Êý¾Ý¿âÌṩÁËÒ»¶¨³Ì¶ÈµÄÂß¼­¶ÀÁ¢ÐÔ¡£

18

4. ÊÓͼÄܹ»¶Ô»úÃÜÊý¾ÝÌṩ°²È«±£»¤¡£ 5. Êʵ±µÄÀûÓÃÊÓͼ¿ÉÒÔ¸üÇåÎúµÄ±í´ï²éѯ¡£

3¡¢ÓÃSQLʵÏÖ¸´ÔӵIJéѯ

ÂÔ

4¡¢Ê²Ã´ÊÇ»ù±¾±í£¿Ê²Ã´ÊÇÊÓͼ£¿Á½ÕßµÄÇø±ðºÍÁªÏµÊÇʲô£¿ÎªºÎÒªÒýÈëÊÓͼ£¿

»ù±¾±í£ºÊǶÀÁ¢´æÔÚµÄ±í¡£ÔÚSQLÖУ¬Ò»¸ö¹ØÏµ¶ÔÓ¦ÓÚÒ»¸ö±í¡£

ÊÓͼ£ºÊÇ´ÓÒ»¸ö»ò¶à¸ö»ù±¾±íËùµ¼³öµÄ±í¡£ÊÓͼ±¾Éí²¢²»¶ÀÁ¢´æ´¢ÔÚÊý¾Ý¿âÖУ¬ÊÇÒ»¸öÐé±í£¬¼´Êý¾Ý¿âÖÐÖ®´æ·ÅÊÓͼµÄ¶¨Òå¶ø²»´æ·ÅÆäËù¶ÔÓ¦µÄÊý¾Ý£¬ÕâЩÊý¾ÝÈÔÈ»´æ·ÅÔÚµ¼³öµÄÊÓͼµÄ»ù±¾±íÖС£ÊÓͼÔÚ¸ÅÄîÉÏÓë»ù±¾±íµÈͬ£¬Óû§¿ÉÒÔÏñʹÓûù±¾±íÄÇÑùʹÓÃÊÓͼ£¬¿ÉÒÔÔÚÊÓͼÉÏÔÙ¶¨ÒåÊÓͼ¡£

ΪºÎÒªÒýÈëÊÓͼ£º

1. ÊÓͼÄܹ»¼ò»¯Óû§µÄ²Ù×÷£¬¾Û½¹ÓÚËù¹ØÐĵÄÊý¾ÝÉÏ¡£ 2. ÊÓͼʹÓû§ÄÜÒÔ¶àÖֽǶȿ´´ýͬһÊý¾Ý£¬Ôö¼ÓÁé»îÐÔ ¡£ 3. ÊÓͼ¶ÔÖØ¹¹Êý¾Ý¿âÌṩÁËÒ»¶¨³Ì¶ÈµÄÂß¼­¶ÀÁ¢ÐÔ¡£ 4. ÊÓͼÄܹ»¶Ô»úÃÜÊý¾ÝÌṩ°²È«±£»¤¡£ 5. Êʵ±µÄÀûÓÃÊÓͼ¿ÉÒÔ¸üÇåÎúµÄ±í´ï²éѯ¡£

µÚËÄÕ£ºÊý¾Ý¿âµÄ°²È«ÐÔ

1¡¢Ê²Ã´Êý¾Ý¿â°²È«ÐÔ

Êý¾Ý¿âµÄ°²È«ÐÔÊÇÖ¸±£»¤Êý¾Ý¿âÒÔ·ÀÖ¹·Ç·¨Ê¹ÓÃËùÔì³ÉµÄÊý¾Ýй©¡¢¸ü¸Ä»òÆÆ»µ¡£

2¡¢Êý¾Ý¿â°²È«¿ØÖƵij£Ó÷½·¨ºÍ¼¼Êõ

1¡¢Óû§±êʶºÍ¼ø±ð£ºÓÉϵͳÌṩһ¶¨µÄ·½Ê½£¬ÈÃÓû§±íʾ×Ô¼ºµÄÃû×Ö»òÉí·Ý¡£Ã¿´ÎÓû§ÒªÇó½øÈëϵͳʱ£¬ÓÉϵͳ½øÐк˶ԣ¬Í¨¹ý¼ø¶¨ºóϵͳ²ÅÄÜÌṩʹÓÃȨ¡£

2¡¢´æÈ¡¿ØÖÆ£ºÍ¨¹ýÓû§È¨ÏÞ¶¨ÒåºÍºÏ·¨È¨ÏÞ¼ì²éÈ·±£Ö»ÓÐÓµÓкϷ¨È¨ÏÞµÄÓû§²ÅÄÜ·ÃÎÊÊý¾Ý¿â£¬ËùÓÐδÊÚȨÈËÔ±¾ùÎÞ·¨´æÈ¡Êý¾Ý¡£

3¡¢ÊÓͼ»úÖÆ£ºÎª²»Í¬µÄÓû§¶¨ÒåÊÓͼ£¬Í¨¹ýÊÓͼ»úÖÆ°ÑÒª±£ÃܵÄÊý¾Ý¶ÔÎÞȨÏÞÓû§Òþ²ØÆðÀ´£¬´Ó¶ø×Ô¶¯µØ¶ÔÊý¾ÝÌṩһ¶¨³Ì¶ÈµÄ°²È«±£»¤¡£

4¡¢É󼯣º½¨Á¢Éó¼ÆÈÕÖ¾£¬°ÑÓû§¶ÔÊý¾Ý¿âµÄËùÓвÙ×÷×Ô¶¯¼Ç¼ÏÂÀ´²¢·ÅÈëÉó¼ÆÈÕÖ¾ÖС£DBA¿ÉÒÔÀûÓÃÉ󼯏ú×ÙÐÅÏ¢À´ÖØÏÖµ¼ÖÂÊý¾Ý¿âÏÖ×´µÄһϵÁÐʼþ£¬ÕÒ³ö·Ç·¨´æÈ¡Êý¾ÝµÄÈË¡¢Ê±¼äºÍÄÚÈݵȡ£

5¡¢Êý¾Ý¼ÓÃÜ£º¶ÔËù´æ´¢ºÍ´«ÊäµÄÊý¾Ý½øÐмÓÃÜ´¦Àí£¬´Ó¶øÊ¹µÃ²»ÕÆÎÕ½âÃÜËã·¨µÄÈËÎÞ·¨»ñÖªÊý¾Ý¡£

3¡¢Ê²Ã´ÊÇÊý¾Ý¿âÖеÄ×ÔÖ÷´æÈ¡¿ØÖÆ·½·¨ºÍÇ¿ÖÆ´æÈ¡¿ØÖÆ·½·¨£¿ÎªÊ²Ã´Ç¿ÖÆ´æÈ¡¿ØÖÆÌṩÁ˸ü¸ß¼¶±ðµÄ°²È«ÐÔ£¿

×ÔÖ÷´æÈ¡¿ØÖÆ·½·¨£º¶¨Òå¸÷¸öÓû§¶Ô²»Í¬Êý¾Ý¶ÔÏóµÄ´æÈ¡È¨ÏÞ¡£µ±Óû§Òª·ÃÎÊÊý¾Ý¿âʱ£¬Ê×ÏÈÒª¼ì²éÆä´æÈ¡È¨ÏÞ£¬ÒÔ·ÀÖ¹·Ç·¨Óû§¶ÔÊý¾Ý¿â½øÐдæÈ¡¡£

¡°×ÔÖ÷´æÈ¡¿ØÖÆ¡±ÖС°×ÔÖ÷¡±µÄº¬Ò壺Óû§¿ÉÒÔ½«×Ô¼ºËùÓµÓеĴæÈ¡È¨ÏÞ¡°×ÔÖ÷¡±µØÊÚÓèËûÈË£¬¼´Óû§¾ßÓÐÒ»¶¨µÄ¡°×ÔÖ÷¡±È¨¡£

Ç¿ÖÆ´æÈ¡¿ØÖÆ·½·¨£ºÃ¿Ò»¸öÊý¾Ý¶ÔÏ󱻣¨Ç¿ÖƵأ©±êÒÔÒ»¶¨µÄ¼ÓÃܼ¶±ð£¬Ã¿Î»Óû§Ò²±»

19

£¨Ç¿ÖƵأ©ÊÚÓèijһ¼¶±ðµÄÐí¿ÉÖ¤¡£ÏµÍ³¹æ¶¨Ö»ÓоßÓÐijһÐí¿ÉÖ¤¼¶±ðµÄÓû§²ÅÄÜ´æÈ¡¼ÓÃܼ¶±ðµÄÊý¾Ý¶ÔÏó¡£

Ç¿ÖÆ´æÈ¡¿ØÖÆ£¨MAC£©ÊǶÔÊý¾Ý±¾Éí½øÐÐÃܼ¶±ê¼Ç£¬ÎÞÂÛÊý¾ÝÈçºÎ¸´ÖÆ£¬±ê¼ÇÓëÊý¾ÝÊÇÒ»¸ö²»¿É·ÖµÄÕûÌ壬ֻÓзûºÏÃܼ¶±ê¼ÇÒªÇóµÄÓû§²Å¿ÉÒÔ²Ù×ÝÊý¾Ý£¬´Ó¶øÌá¸ßÁ˸ü¸ß¼¶±ðµÄ°²È«ÐÔ¡£

4¡¢×ÔÖ÷´æÈ¡¿ØÖÆÓï¾ä£ºÊÚȨÓëÊÕ»ØÓï¾ä¡£

GRANT Óï¾äºÍ REVOKE Óï¾äʵÏÖ¡£ ¹ØÏµÊý¾Ý¿âϵͳÖдæÈ¡¿ØÖÆÈ¨ÏÞ£º

1¡¢GRANT£¨ÊÚȨ£©

GRANTÓï¾äµÄÒ»°ã¸ñʽ£º

GRANT <ȨÏÞ>[,<ȨÏÞ>]...

ON <¶ÔÏóÀàÐÍ> <¶ÔÏóÃû> £¬[<¶ÔÏóÀàÐÍ> <¶ÔÏóÃû>] TO <Óû§>[,<Óû§>]...

[WITH GRANT OPTION];

½«¶ÔÖ¸¶¨²Ù×÷¶ÔÏóµÄÖ¸¶¨²Ù×÷ȨÏÞÊÚÓèÖ¸¶¨µÄÓû§

·¢³öGRANT£ºDBA£¬Êý¾Ý¿â¶ÔÏó´´½¨Õߣ¨¼´ÊôÖ÷Owner£©£¬ÓµÓиÃȨÏÞµÄÓû§½ÓÊÜȨÏÞµÄÓû§ £ºÒ»¸ö»ò¶à¸ö¾ßÌåÓû§£»PUBLIC£¨È«ÌåÓû§£©¡£ Àý£º°Ñ²éѯStudent±íȨÏÞÊÚ¸øÓû§U1 GRANT SELECT

ON TABLE Student TO U1;

Àý£º°Ñ²éѯStudent±íºÍÐÞ¸ÄѧÉúѧºÅµÄȨÏÞÊÚ¸øÓû§U4 GRANT UPDATE(Sno), SELECT ON TABLE Student TO U4;

¶ÔÊôÐÔÁеÄÊÚȨʱ±ØÐëÃ÷È·Ö¸³öÏàÓ¦ÊôÐÔÁÐÃû

2¡¢REVOKE£ºÊÚÓèµÄȨÏÞ¿ÉÒÔÓÉDBA»òÆäËûÊÚȨÕßÓÃREVOKEÓï¾äÊÕ»Ø REVOKEÓï¾äµÄÒ»°ã¸ñʽΪ£º

REVOKE <ȨÏÞ>[,<ȨÏÞ>]...

ON <¶ÔÏóÀàÐÍ> <¶ÔÏóÃû> >[,<¶ÔÏóÀàÐÍ> <¶ÔÏóÃû>] ¡­ FROM <Óû§>[,<Óû§>]... >[CASCADE|RESTRICT]£»

20