Professional Documents
Culture Documents
ﺟﻠﺴﻪ اول
اﻳﻦ ﺟﻠﺴـﻪ اﺧﺘﺼـﺎص ﺑـﻪ ﻳـﺎدآوري ﻣﻔﺎﻫﻴـﻢ و ﺗﻌـﺎرﻳﻒ اوﻟﻴـﻪ ﭘﺎﻳﮕـﺎه دادهﻫﺎ ،ﺗﺎرﻳﺨﭽﻪ آن و ﻣﻬﻤﺘـﺮﻳﻦ
ﭘﻴﺎدهﺳﺎزﻳﻬـﺎي راﻳﺞ SQLو ...دارد ﻛـﻪ در ﻓﺼـﻞ اول ﻛﺘـﺎب ﺑﻪ آن ﭘﺮداﺧﺘﻪ ﺷﺪه اﺳﺖ.
ﺿﻤﻨﺎً اﺳﺘﺎدان ﻣﺤﺘﺮم ،ﻣﻲﺗﻮاﻧﻨﺪ داﻧﺸﺠﻮﻳﺎن را در ﮔﺮوﻫﻬﺎي دو ﻳﺎ ﺳﻪ ﻧﻔﺮه ﺗﻘﺴﻴﻢ ﻛﻨﻨﺪ و ﻫﺮ ﮔﺮوه
ﺣﺪاﻛﺜﺮ دو ﻫﻔﺘﻪ ﻓﺮﺻﺖ دارد ﺗﺎ ﭘﺮوژه ﺧﻮد را ﺗﻌﺮﻳﻒ و ﺑﻪ ﺗﺎﻳﻴﺪ اﺳﺘﺎد ﻣﺮﺑﻮﻃﻪ ﺑﺮﺳﺎﻧﺪ.
ﻻزم ﺑﻪ ذﻛﺮ اﺳﺖ ﻛﻪ در ﺻﻮرت ﺗﻤﺎﻳﻞ ،داﻧﺸﺠﻮﻳﺎن ﻣﻲﺗﻮاﻧﻨﺪ از ﭘﺮوژهﻫﺎي ﺗﻌﺮﻳﻒﺷﺪه در ﭘﺎﻳﺎن ﻓﺼﻞ
ﺳﻮم ﻛﺘﺎب ﭘﺎﻳﮕﺎه دادهﻫﺎ ،ﺗﺄﻟﻴﻒ آﻗﺎي راﻧﻜﻮﻫﻲ اﺳﺘﻔﺎده ﻛﻨﻨﺪ.
ﺟﻠﺴﻪ دوم
اﻳﻦ ﺟﻠﺴﻪ اﺧﺘﺼﺎص ﺑﻪ ﻣﻌﺮﻓﻲ اﻧﻮاع ﭘﺎﻳﮕﺎه دادهﻫﺎ و ﺳﻴﺴﺘﻤﻬﺎي ﻣﺪﻳﺮﻳﺖ آن دارد ﻛﻪ در ﻓﺼﻞ دوم ﻛﺘﺎب ﺑﻪ
آن اﺷﺎره ﺷﺪه اﺳﺖ .در ﭘﺎﻳﺎن اﻳﻦ ﺟﻠﺴﻪ داﻧﺸﺠﻮﻳﺎن ﺑﺎﻳﺴﺘﻲ ﻣﻔﺎﻫﻴﻤﻲ ﭼﻮن ﻣﺪل راﺑﻄﻪ اي DBMS ،و...را
ﺑﻄﻮر ﻛﺎﻣﻞ ﻓﺮا ﮔﺮﻓﺘﻪ ﺑﺎﺷﻨﺪ.
ﺟﻠﺴﻪ ﺳﻮم
در اﻳﻦ ﺟﻠﺴﻪ اﺻـﻮل ﻃﺮاﺣـﻲ ﭘﺎﻳـﮕﺎه دادهﻫﺎ ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ ﻓﺼـﻞ ﺳـﻮم ﻛﺘـﺎب آﻣـﻮزش داده ﻣﻲﺷﻮد.ﻫﻤﭽﻨﻴﻦ
ﻣﻬﻠﺖ ﺗﻌﺮﻳﻒ ﭘﺮوژه ﮔﺮوﻫﻬﺎ در اﻳﻦ ﺟﻠﺴﻪ ﺑﻪ ﭘﺎﻳﺎن ﻣﻲرﺳﺪ.
ﺟﻠﺴﻪ ﻫﻔﺘﻢ
در اﻳﻦ ﺟﻠﺴﻪ ﻣﻄﺎﺑﻖ ﻓﺼﻞ ﻫﻔﺖ ﻛﺘﺎب ،داﻧﺸﺠﻮﻳﺎن ﺑﻪﺻﻮرت ﻛﺎﻣﻞ ﺑﺎ ﻣﻔﻬــــﻮم ADOو روﻧﺪ ﻛﻠﻲ
ﺑﺮﻗﺮاري اﺗﺼـﺎل ﺑﺎ Databaseآﺷـﻨﺎ ﺷـﺪه و اﻗﺪام ﺑﻪ ﭘﻴﺎدهﺳﺎزي ﺑﺎﻧﻚ اﻃﻼﻋﺎﺗﻲ ﺧﻮد ﻣﻲﻧﻤﺎﻳﻨﺪ.
ﺟﻠﺴﺎت ﻫﺸﺘﻢ ﺗﺎ دوازدﻫﻢ
در اﻳﻦ ﺟﻠﺴﺎت داﻧﺸﺠﻮﻳﺎن ﺿﻤﻦ ﺑﺤﺚ و ﺗﺒﺎدل ﻧﻈﺮ و رﻓﻊ اﺷﻜﺎل ﺑﺎ اﺳﺘﺎد ،ﻧﺴﺒﺖ ﺑﻪ ﻣﺴﺘﻨﺪﺳﺎزي ﭘﺮوژه
ﺧﻮد اﻗﺪام ﻣﻲﻧﻤﺎﻳﻨﺪ و در ﭘﺎﻳﺎن ﺗﺮم ﭘﺮوژه ﺗﻜﻤﻴﻞﺷﺪه اراﺋﻪ ﺧﻮاﻫﻨﺪ داد.
اﺳﺎﺗﻴﺪ ﻣﺤﺘﺮم ﻧﻴﺰ ﺿﻤﻦ ﻧﻈﺎرت ﺑﺮ روﻧﺪ اﺟﺮاي ﭘﺮوژه ﻫﺮ ﮔﺮوه در ﻃﻮل ﺗﺮم ،در ﻫﺮ ﺟﻠﺴﻪ ﻓﻌﺎﻟﻴﺘﻬﺎ و
ﺗﻤﺮﻳﻨﺎﺗﻲ ﻣﺘﻨﺎﺳﺐ ﺑﺎ ﻫﺮ ﻓﺼﻞ را ﺑﺮاي داﻧﺸﺠﻮﻳﺎن درﻧﻈﺮ ﺑﮕﻴﺮﻧﺪ و در ﻳﺎدﮔﻴﺮي ﻣﻄﺎﻟﺐ و اﻧﺘﻘﺎل ﻣﻔﺎﻫﻴﻢ ﻫﺮ
ﻓﺼﻞ داﻧﺸﺠﻮﻳﺎن را ﻳﺎري ﻧﻤﺎﻳﻨﺪ.
داﻧﺸﺠﻮﻳﺎن ﻋﺰﻳﺰ ﻣﻲﺑﺎﻳﺴﺖ ﺑﺎ ﺗﻜﻤﻴﻞ ﻓﺮﻣﻬﺎي ﻣﻮﺟﻮد در ﭘﻴﻮﺳﺘﺎر 2ﻛﺘﺎب ﭘﺎﻳﮕﺎه دادهﻫﺎ ﺗﺎﻟﻴﻒ آﻗﺎي
راﻧﻜﻮﻫﻲ ،ﻣﻄﺎﺑﻖ ﺑﺎ زﻣﺎنﺑﻨﺪي اراﺋﻪ ﺷﺪه ،اﺳﺎﺗﻴﺪ ﻣﺤﺘﺮم را در ﺟﺮﻳﺎن روﻧﺪ اﺟﺮاي ﭘﺮوژه ﺧﻮد ﻗﺮار دﻫﻨﺪ و
در ﻫﺮ ﺟﻠﺴﻪ ﻧﻴﺰ ﭘﺎﺳﺦ ﺗﻤﺮﻳﻨﺎت ﺟﻠﺴﻪ ﻗﺒﻞ را ﺑﻪ اﺳﺘﺎد ﺧﻮﻳﺶ ﺗﺤﻮﻳﻞ ﻧﻤﺎﻳﻨﺪ.
ﻧﺤﻮه ارزشﮔﺬاري و ﻧﻤﺮهدﻫﻲ ﺑﻪ داﻧﺸﺠﻮﻳﺎن ﻋﺰﻳﺰ ﻧﻴﺰ ﺑﺮ اﺳﺎس ﻣﺴﺘﻨﺪات و ﭘﺮوژه اراﺋﻪ ﺷﺪه در
ﭘﺎﻳﺎن ﺗﺮم ،ﺗﻤﺮﻳﻨﺎت ﻛﻼﺳﻲ و ﻣﻴﺰان ﺗﺴﻠﻂ داﻧﺸﺠﻮ ﺑﺮ ﻣﻄﺎﻟﺐ درﺳﻲ ﻣﻲﺑﺎﺷﺪ.
اﻣﻴﺪ اﺳﺖ ﻛﻪ ﺗﻮاﻧﺴﺘﻪ ﺑﺎﺷﻴﻢ ﻗﺪﻣﻲ ﻫﺮﭼﻨﺪ ﻛﻮﭼﻚ در ﺟﻬﺖ ارﺗﻘﺎء ﺳﻄﺢ ﻋﻠﻤﻲ و اﻓﺰاﻳﺶ ﺗﻮاﻧﺎﻳﻴﻬﺎي ﺷﻤﺎ
داﻧﺸﺠﻮﻳﺎن ﻋﺰﻳﺰ ﺑﺮداﺷﺘﻪ ﺑﺎﺷﻴﻢ.
¥Y|ÅY -1-1
¶ÌÆ/e Y½M Z/¯ Ê´¿Â/´q { SQL ½Z/] Á Z/Å Ã{Y{ ÃZ´ËZa ¶»Z°e xËZe Z] ÊËZÀM
.|À¯Ê»
ÄrzËZe |¿Y{ ´Ë|°Ë Ä] É{ZË Ê´f]YÁ ZÅÃ{Y{ ÃZ´ËZa Á SQL ½Z] į Zn¿M Y
f/Ì] ZÆ¿M {ZnËY Ä] ZÌ¿ ¶ËÓ{ Á ¹Âƨ» Z] Ze ºË{¯ ½ZÌ] Mfz» Y ZÆ¿M ÂÆ Á ËY|Ìa
.|ËÂ ZÀM
½Z/] ¹Âƨ» ¾Ì] cÁZ¨e { ¾ÌÀr¼Å Á ZÅÃ{Y{ ÃZ´ËZa ¹Âƨ» Á ÄË¿ { ½Á|]
,É|/m ÉZÅZ¯ ¹Zn¿Y ÉY] SQL Y ½YÂe ʼ¿ , SQL Server ÊeZÔY ®¿Z] Á SQL
.{¯ Ã{Z¨fY
SQL l/ËY ÉZÆËZ/ Ã{Z/Ìa ¾Ë/f¼Æ» Ê/§ » Ä/] ¹Y|/«Y z] ¾ËY { ¾ÌÀr¼Å
Ä/fyY{a Z/Æ¿M Ä/ËZ¬» Ä] Á Ã{¼¿ ORACLE Ì¿ Á SQL Server 2000 & 2005 |À¿Z»
SQL Server 2000 Ã{f/³ {]Z/¯ Á ½Á/§YÁ Ã{Z¨fY Á d̼ÅY ¶Ì·{ Ä] ¾°Ì· .ºËY
[Z/f¯ É|/ ] ÉZÆz] { į ºËY Ã{Y{ Y« Ã{Y{ ÃZ´ËZa ¾ËY »M ] Y {Ây Z¯ ÉZÀ^»
.dyY{a ºÌÅYÂy ½M Ä] ¶»Z¯ ÂÄ]
:|ÌZ] Äfy»M Y Ë \·Z» Á ºÌÅZ¨» |ËZ] Z¼ ¶§ ¾ËY ½ZËZa {
½M d̼ÅY Á Ã{Y{ ÃZ´ËZa ¹Âƨ» x
½M É̳ ¶° |¿Á Á SQL ¹Âƨ» x
½M ¦¸fz» ÉZÅËYËÁ Á SQL Server 2000 Z] ÊeZ»|¬» ÊËZÀM x
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 2
˺
SQL ½Z] Á ZÅ Ã{Y{ ÃZ´ËZa ËY|Ìa ÄrzËZe -2-1
.|¿| Äf§³ Z¯ Ä] ®Ì¿Áf°·Y cZ^Zv» ËY|Ìa ÉZÅÁ ¾Ì·ÁY { ZÅÃ{Y{ ÃZ´ËZa
Z¯Ä] cZÔY Y ÉYļn» ½{¯ Ê]ZËZ] Á ÃÌy} ÉY] ZÅÃ{Y{ ÃZ´ËZa ÉZƼfÌ
.|¿ÁÊ»
{ į ÊÀ¨¸e Äqf§{ ºÅ Á ÊËZ¼ÌaYÂÅ ÉZÆf¯ ½ÂÌYÁ ±] ÉZƼfÌ ºÅ
Á ZÅÃ{Y{ ½{¯ ÃÌy} ÉY] ZÆ¿M Y YË |¿ÂÊ» [Âv» ZÅÃ{Y{ ÃZ´ËZa ,dZ¼ \Ìm
.{ÂÊ» Ã{Z¨fY cZÔY Ê]ZËZ]
70 ÄÅ{ µÂ { ,| {ZnËY É{ÔÌ» 60 ÄÅ{ YÁY Y ZÅÃ{Y{ ÃZ´ËZa ÉÁZÀ§
¶ËYÁY Á 70 Ä/Å{ /yYÁY Y .d§³ Y/« Ã{Z¨fY {» Ê/³{/f³ Ä] Á d§ZË Ä Âe
{» ÉYÄ]Y ÉZÅÃ{Y{ ÃZ´ËZa dËË|» ºfÌ ¹Z¿ Ä] ÉÁZÀ§ ½M Y ÉYÃ{ 80 ÄÅ{
Ä] d^¿) ºÅ ÂÀÅ Á | ÄfyZÀ ,e] ÉÁZÀ§ ½YÂÀ Ä] Á d§³ Y« ÉfÌ] Ë~a
.{̳ʻ Y« Ã{Z¨fY {» ZÌ] (´Ë{ ÉZÅĿ³
{ ÉYÄ]Y ÉZƼfÌ Y Éf¸»Z¯ ¿ ,dË{ ĸ¼m Y ½Y´ÅÁa Ê ] ¿ Ä]
ºfÌ Y Ê^̯e) {Â] |ÅYÂy ¸» ÉÁZÀ§ ½Z¯Z¼¯ É{ÔÌ» ¹Â ÃYÅ µÁY ÄÅ{
ÄuÁ» ÉYÄ]Y µ|» ºÌÅZ¨» ,Ã|ÀË¿ ¾Ì¼Å ¿ Y Äf^·Y (Y³VÌ ºfÌ Á ÉYÄ]Y
.{Â] |ÀÅYÂy ÉYÄ]Y ÉZÅ ºfÌ ÄËZa ºÅ ´Ë{ µZ | Ze {Z¯ ÉZ«M Âe
|Ì·Âe cÂÄ] 0Z ] Á {ZnËY ºÅ É´Ë{ ÉZƼfÌ ,80 ÄÅ{ YÁY Y Z»Y
dËË|» |À¼ÂÅ ºfÌ ,(¿Y{) dyZÀ ÃZ´ËZa ºfÌ Ä¸¼m Y ˭|¿| Ä ÉZne
.|ÌÀ¯ Ä mY» ÊÅ°¿Y ÉZ«M ¦Ì·Ze ZÅ Ã{Y{ ÃZ´ËZa É{ZÌÀ] ºÌÅZ¨» [Zf¯ µÁY Zf¨³ Ä] fÌ] Ä ·Z» ÉY] .1
3 ZÅÃ{Y{ ÃZ´ËZa ʧ »
|ÀqÅ .ZÅÃ{Y{ dËË|» ÊËZÀ » ºfÌ Á Y³LÊ ÉYÃ{Y{ ÃZ´ËZa dËË|» ºfÌ ,ZÅÃ{Y{
.|¿ÂÊ» Ã{Z¨fY ÊZy ÉZÅ{]Z¯ { ÂÀÅ ZƼfÌ ¾ËY fÌ]
ÉZƼfÌ ½ZÌ» Y .|À»Z¿Ê» ÉYÄ]Y a ÉZƼfÌ ÃZ³ Y ZƼfÌ ¾ËY
¶§Zv» Ã{Z¨fY {» fÌ] Y³LÊ ÉZÅÃ{Y{ ÃZ´ËZa dËË|» ºfÌ |ËZ ,ÉYÄ]Ya
Ã| Ä ,¥» YZ] Ä] ºfÌ Â¿ ¾ËY Y ÉfÌ] cY|Ì·Âe Á {̳ʻ Y« Ê°ÌÀ°e
.|¿ÂÊ» Á
Äf§ZËdyZ ½Z] ÉZÀ » Ä] Á Structured Query Language ¦¨z» SQL
Z£M Z̿¨̷Z¯ ÉÃÂy ½Z { IBM ÉZÅÃZ´ËZ»M Y SQL xËZe .|Z]Ê» a
.| |·Âf» Zn¿M { SQL ˬ 70 ÄÅ{ Ê¿ZËZa ÉZÆ·Z { į {ÂÊ»
Á
a) ZÅ Query ÉY] į SEQUEL ½Z] 70 ÄÅ{ yYÁY { IBM d¯
į Zn¿M Ze ,{¯ ÊeYÌ̤e Ì¿ ½Z] ¾ËY ½Z» Ì̤e Z] .{¯ Y|]Y Y |Ê» Ã{Z¨fY (ZÅÂm
Administrating ÉY] ºÌf¿YÂeÊ» ½M Y Á |ʼ¿ Ã{Z¨fY ZÅ Query ÉY] ¬§
½Z] ¾ËY ZÆe|» Y | ] Á ºÌÀ¯ Ã{Z¨fY Ì¿ Database { (dÌÀ»Y) Security Á (dËË|»)
.{Y{ ¹Z¿ Ì̤e SQL Ä]
.NET Z] Ê´qZb°Ë
XML ÉÁZÀ§
,dY Ã| ¶Ë|^e ¦¸fz» ÉZÅ° ¾Ì] ÊZ^eY {Y|¿ZfY ®Ë Ä] XML į ½ÂÀ¯Y
eÃ{Z { [Ô¬¿Y ®Ë {ZnËY Á ½M Ä] ʧZ¯ ÄmÂe Y ºÅ SQL Server |Ë|m Äz¿
.dY Äf§¿ è ½M Y ½{¯ Ã{Z¨fY
½Z] Á {Y|¿ZfY ¾ËY Ä] ÊZy ÄmÂe SQL Server |Ë|m Äz¿ { į Zm½M Y
{Y|¿ZfY Á ʸ^« ÉZÅÃ{Y{ Y¿Y Ä] (Data type) |Ë|m Ã{Y{ ¿ ®Ë ,dY Ã| ÊZ^eY
{Y{ ¹Z¿ XML |Ë|m Ã{Y{ ¿ ¾ËY .dY Ã| ħZY ½M µZj»Y Á char ,int ¶j» SQL
.dY Y³VÌ Ìv» ®Ë { {n» Ã{Y{ ¿ ®Ë cZÌÂy ÉYY{ Á
É̳Y³ ËÁ
Á ¾Ëe\·Zm Y Ê°Ë Ä] 2005 Äz¿ { ÂÀf» ÉZÅY³ |Ì·Âe |Ë|m ËÁ
É« ´Y³ Âe» ®Ë {ÂmÁ .dY Ã| ¶Ë|^e Äz¿ ¾ËY ÉZÅd̸]Z« ¾Ëe{]Z¯a
Ze Ã| hZ] ,Ê·Z ]Z¯ YÁ Z] Y³ dyZ \ZÀ» Y]Y ®Ë Á Á d¼ {
d¼ { \ZÀ» d Á ÊËYZ¯ Z] Y {Ây ¿{» ÉZÅY³ |À¿YÂf] ½ZË¿ĻZ¿]
5É{]Z¯ ÉÄ»Z¿] Å Âe Á d¼ ÉZÅY³ ¾ËY į ÉÂÄ] .|¿Z] Á
7 ZÅÃ{Y{ ÃZ´ËZa ʧ »
Ã|ÅZ» ¶]Z« SQL Server Ä] µZeY cZ¿Z°»Y ½Z¼Å Z] Ê»§d¸a Å { Éf» d¼
.dY
Zy dËË|»
Error ºfÌ Y Zy dËË|» Á ¦¯ ÉY] SQL Server ʼË|« ÉZÅÄz¿ {
ºÅ 6 ®ÌÌ] µYÁËÁ ¶j» Ê¿Z] { į Zy ¦¯ ÃÂÌ ¾ËY .|Ê» Ã{Z¨fY Handling
y Á µfÀ¯ d¿YÂeÊ» GOTO Âf{ Y Ã{Z¨fY Z] d§³Ê» Y« Ã{Z¨fY {»
¶v» Ä] Zy Á] ¶v» Y «YÁ { Á ´Ë{ ¶v» Ä] ¶v» ®Ë Y Y µYÁ ÉYmY
½Z¿ ]Z¯ Ä] Y ÊËZy ¹Z¤Ìa ĸÌÁ¾Ë|] Á {^] ½M (Raise) ½{¯ Z°M Á dËË|»
Á ¦¯ ÃËÁ cYÂf{ Y ,d¿cY{ ¹¨f¸a Y ÌiPe Z] SQL Server |Ë|m Äz¿ .|Å{
Y Ã{Z¨fY Z] Á ¾ËY .|À¯Ê» Ã{Z¨fY Exception Handling ½YÂÀ Z] Zy dËË|»
{ .{Y~³Ê» YmY Ä] Y Zy dËË|» Y ÉfÆ] ÃÂÌ TRY/CATCH |Ë|m cYÂf{
Ä] Â]» ÉZÅZy ¶j» Ê¿{Zf§Y ©Z¨eY ÉZÅZy ¹Z¼e ,¶^« Á ¥Ôy] Á ¾ËY
Á] Y Á Ã| dËË|» Ê]Ây Ä] (DataConversion) ´Ë|°Ë Ä] ZÅÃ{Y{ ¶Ë|^e
Ä] É̳¸m {ÂÊ» ´Ëe ZË µYÁ ®Ë cZ̸¼ «Z¿ ¹Z¼eY Ä] nÀ» į ÊËZÅZy
.|ËMÊ» ¶¼
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 8
.|ÌÀ¯ Ä mY» ÊÅ°¿Y ÉZ«M ¦Ì·Ze ZÅ Ã{Y{ ÃZ´ËZa É{ZÌÀ] ºÌÅZ¨» [Zf¯ º Zf¨³ Ä] fÌ] Ä ·Z» ÉY] .1
.^À» ½Z¼Å .2
.|ÌÀ¯ Ä mY» ÊÅ°¿Y ÉZ«M ¦Ì·Ze ZÅ Ã{Y{ ÃZ´ËZa É{ZÌÀ] ºÌÅZ¨» [Zf¯ ºÅ{ Zf¨³ Ä] fÌ] Ä ·Z» ÉY] .3
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 10
į Ã|¿Áa ´Ë{ Äz¿ Z] z É{Âm» ,®¿Z] Ã|¿Áa Y ÉYÄz¿ { Ôj» .|ÀZ^¿
.|ÀZ^¿ cÁZ¨f» dY ½M µ{Z »
1
(DataBase Schema) cZÔY ®¿Z] ʯY{Y ËÂe -5
į ÊËZÅÃ{Y{ Ä] ÄmÂe ½Á|] cZÔY ®¿Z] ®Ë { Ã| ÊuY ÉZÅZfyZ ļn»
µ|» { 0Ôj» .|¿Y{ ¹Z¿ cZÔY ®¿Z] (Schema) ÉZ¼ ,|¿Ì³ Ê» Y« ZÆ¿M {
µÁY|m ½M ÉZÆ¿Âf Á Ã{Z¨fY {» µÁY|m Y cZÔY ®¿Z] ®Ë ÉZ¼ ,ÉYÄ]Y
.|ÀÅ{Ê» ¶Ì°e
cZÔY Á ZÅ {Y| e Ê·Á {ÂÊ» Â]» ®¿Z] ÉZ¼ Ä] ½Âf Å Ã{Y{ ¿
®¿Z] Ë|» Ã|Æ ] ®¿Z] ÉZ¼ ÄÌÆe Ó¼ ».{Y|¿ ®¿Z] ÉZ¼ Ä] Ê] ZÆ¿M { {Âm»
.|Z]Ê» (DBA) cZÔY
2
ZÅÃ{Y{ µÔ¬fY -6
ÂÄ] .dY ZÆ¿M {]Z¯ Y ZÅÃ{Y{ ÉZÃÌy} ½{Â] ¶¬f» ,ZÅÃ{Y{ µÔ¬fY Y ÂÀ»
.{ÂÊ» ºÌ¬e ʬÀ» µÔ¬fY ÁÊ°Ȩ̈ µÔ¬fY ʸ¯ Äf{ Á{ Ä] ZÅÃ{Y{ µÔ¬fY ʸ¯
Y ZÅÄ¿Z ÉÁ ZÅÃ{Y{ ÉZÃÌy} ÃÂv¿ į dY ÊÀ » ¾ËY Ä] Ê°Ȩ̈ µÔ¬fY
¿ Ôj») { Ã{Y{ ZÅÃ{Y{ ÉZÃÌy} { ÉÌ̤e ³Y ÊÀ Ë .|¿Z»Ê» ʨz» ½Y]Z¯ |Ë{
ʬÀ» µÔ¬fY ,|ÀÀ°¿ ÉÌ̤e pÌÅ É{]Z¯ ÉZÅÄ»Z¿] (|À¯ Ì̤e ÉZÃÌy} Ä¿Z
ÉZÅÄ»Z¿] Á ½Y]Z¯ |Ë{ Y cZÔY ®¿Z] ʯY{Y ËÂe Ì̤e į dY ÊÀ » ¾Ë|]
ʸ^« ÉZÅÄ»Z¿] 5 ½Âf ½{Á§Y Z] |Z] ÄfY{ ½Âf 4 Ê·Á|m ³Y 0Ôj».|¿Z¼] ʨz» ZÆ¿M
Ì̤e ÄmÂf» ]Z¯ ´Ë{ cZ^ Ä] Á |ÀÀ¯ ¶¼ |À¿YÂf] |Ë|m ½Âf Ä] ÄmÂe ½Á|]
.{ Ã{Y{ Y« ÉÁ ZÌfyY { |Ë|m ½Âf Ä] ÄmÂe Z] É|Ë|m Ä»Z¿] Ä°ÀËY ´» ,{¿
cZÔY ®¿Z] ÉZÄ»Z¿] ÉZÆ¿Z] -7
Query ) Âm Á
a ½Z] ZÆ¿M Ä] į (Declarative) Ê¿ZÌ] ÉZÆ¿Z] Y cZÔY ®¿Z] {
¾ËY Âm Á
a ÉZŽZ] Z] į ¾ËY ¶Ì·{ Ä].{ÂÊ» Ã{Z¨fY ,|À˳ʻ Ì¿ (Language
Y Äf~³ { .|À¯ Z¯ |ÅYÂyÊ» į  ŠZÅÃ{Y{ Z] į {Y|¿ {ÂmÁ ]Z¯ ÉY] ½Z°»Y
.|ÌÀ¯ Ä mY» ÊÅ°¿Y ÉZ«M ¦Ì·Ze ZÅ Ã{Y{ ÃZ´ËZa É{ZÌÀ] ºÌÅZ¨» [Zf¯ ºnÀa Zf¨³ Ä] fÌ] Ä ·Z» ÉY] .1
.|ÌÀ¯ Ä mY» ÊÅ°¿Y ÉZ«M ¦Ì·Ze ZÅ Ã{Y{ ÃZ´ËZa É{ZÌÀ] ºÌÅZ¨» [Zf¯ ºfÅ Zf¨³ Ä] fÌ] Ä ·Z» ÉY] .2
11 ZÅÃ{Y{ ÃZ´ËZa ʧ »
®Ë Z¯Âe ½Z] ,|Ê» Ã{Z¨fY (Embedded Language) Z¯Âe ÉZÆ¿Z] ¹Z¿ Z] ÊÁ
{ Á {ÂÊ» Ã{Z¨fY ½Z]Ì» ½Z] ½YÂÀ Ä] µZ°Za |À¿Z» ÓZ] t ÊË¿ĻZ¿] ½Z]
cZÔ/Y ®/¿Z] Ä] Ê]Z/Ìf{ ÉY] SQL |À¿Z» Âm Á
a ½Z] cYÂf{ ½M ½Á{
.{{³Ê» Ê¿YÂ/yY/§
:dY ZÌ¿ ½Z] ¿ Á{ Ä] cZÔY ®¿Z] {
,ZÅZfyZ /Ì̤e Á ¦Ë/ e ¶Ì^« Y ÊËZ/ÅZ/¯ :DDL ZË Z/ÅÃ{Y{ ¦/Ë/ e ½Z] (¦·Y
.{̳ʻ ¹Zn¿Y ½Z] ¿ ¾ËY Âe ,ÉYÄ]Y µ|» { µÁY|m Ôj»
Âe ZÅÃ{Y{ Y cZÔY kYzfY ¶Ì^« Y ÊeZ̸¼ :DML ZË ZÅÃ{Y{ Z] Z/¯ ½Z] ([
|À¿Z» Âm Á
a ÉZÆ¿Z] .ZÆ°¿Z] Y Âm Á
a Y¿Y ¶j» ,{̳ʻ ¹Zn¿Y ½Z] ¿ ¾ËY
.|¿YÃ{ÁM ºÅY§ Zn°Ë Y ZÌ¿ Á{ Å SQL
µ/fÀ¯ ½Z] ®Ë ½YÂeÊ» ©Â§ ½Z/] Á{ ] ÃÁÔ :DCL ZË ZÅÃ{Y{ µ/fÀ¯ ½Z] (k
Ä] Êf{ ÉY] ½Y]Z¯ Ä] ÃZ/mY ½{Y{ Ôj» ,Ê·fÀ¯ µZ/¼Y Ä/¯ {/¯ ¦Ë e ZÅÃ{Y{
.{̳ʻ ¹Zn¿Y ½Z] ¿ ¾ËY ĸÌÂ] ZÆ¿M ÉZ°f{ Á ZÅÃ{Y{
À¯Ye -8
¹Z¿ À¯Ye {ÂÊ» YmY cZÔY ®¿Z] Ìv» { ]Z/¯ Âe į ÉYÄ»Z/¿] Ŀ³Å
į dY ¾ËY Ê°¿Z]Ì£ Ìv» { ʷ¼ » Ä»Z¿] ®Ë Z] À¯Ye ®Ë ʸY cÁZ¨e .{Y{
Ä] Êfu Á µfÀ¯ Ŀ³ŠµZ¼Y { DBMS .{ÂÊ» µÂv» DBMS Ä] ÃY¼ŠÀ¯Ye
.dY Zfz» ½M Y ½{¯ ¿ ¥ ZË Á ¾fyY|¿Y ªË e
dv Á dÌ »Zm ¨u ZŪË e Á ¥~u Á ZŵfÀ¯ Ŀ³¾ËY Y ʸY ¥|Å
.ZÅÄ»Z¿] Ä¿ ,dY ZÅÃ{Y{ Z] µÁY d̼ÅY cZÔY ®¿Z] { YË .dY cZÔY ®¿Z]
Ê»Z¼e ÉÁ ] Ë µfÀ¯ 4 dËZ]Ê» { ¾Ì¼e ®¿Z] dÌ »Zm Á dv Ä°ÀËY ÉY]
:|À»Â» (ACID) YÂy Ä] į {{³ µZ¼Y ZÆÀ¯Ye
ÊÀ » ¾ËY Ä] ˭dY ¹Â» pÌÅ ZË Ä¼Å Ä] dÌZy ¾ËY :(Atomicity) Ê´qZb°Ë (¦·Y
.ZÆ¿M Y ¹Y|¯pÌÅ ZË Á { YmY |ËZ] À¯Ye ®Ë ÉZÅ ¶¼ ·YÂf{ Ê»Z¼e ZË Ä¯
Ê»Z¼e |ËZ] À¯Y/e/Å Ä/¯ |ËÂ/³Ê» dÌZy ¾ËY :(Consistency)Ê¿YÂz¼Å ([
³Y À¯Ye Å /´Ë{ cZ^ Ä] ZË Á |À¯ dËZ/ Y cZ/ÔY ®/¿Z] dÌ »Zm ¾Ì¿Y«
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 12
¶¬fÀ» É´Ë{ tÌv d·Zu Ä] tÌv Êf·Zu Y Y cZÔY ®¿Z] { YmY ÊËZÆÀe Ä]
:|Z] ÄfY{ ½ZËZa ¿ Á{ dY ¾°¼» À¯Ye ¾ËY]ZÀ] .|À¯Ê»
Ô/Y į dY ¾ËY ¶j» Á |À»Z¿Ê» ¬ ZË Abort Y ½M į ª/§Â»Z¿ ½ZËZa -1
.dY Ã|¿ YmY À¯Ye
.|À»Z¿Ê» ¹Zn¿Y ZË Commit Y½M į ª§Â» ½ZËZa -2
½ZÀq ´Ë|°Ë ÉÁ |¿Á¼Å ÉZÆÀ¯Ye iY dÌZy ¾ËY ª^ ] :(Isolation) YÁ¿Y (k
|¿Á¼Å ÉZÆÀ¯Ye ´Ë{ cZ^ Ä] .{ÂÊ» ¹Zn¿Y YÁ¿Y { ¹Y|¯ Å Z˳ į dY
ʨ¸fz» ÉZÆÁ Y ÂÀ» ¾Ì¼Å Ä] ,|ÀZ] ÄfY{ ´Ë|°Ë ÉÁ [z» iY dËZ]ʼ¿
.{{³Ê» Ã{Z¨fY
:Y |ÀeZ^ ZÆÁ ¾ËY ĸ¼m Y
|Z] ÄfY{ ZÌ¿ ÉYÃ{Y{ Ä] ÊÀ¯Ye ÃZ³Å Á ¾ËY { :(Locking) ÉY~³¶¨«
Z»Y |]ZËÊ» ËY§Y cZ̸¼ ¹Zn¿Y d Á ¾ËY { .|Å{Ê» Y½M ½{¯ ¶¨« ÉZZ¬e
.|]ZËÊ» ËY§Y Ì¿ d]¾] Á] µZ¼fuY {ÂmÁ ¾ËY Z]
ļŠ̿ Á ZÆÀ¯Ye Ä/¼Å ÉY] Á ¾ËY { :(Time stamping) Ê¿Z» ÉY~³Ä¿Z¿
Ì£ Ê¿Z» ÉZÅÄ¿Z¿ (¾f¿ ZË ½|¿YÂy) ZÆ¿M Ä] Ê]ZÌf{ ¿ Á Ê]ZÌf{ {» ÉZÅÃ{Y{
.{ÂÊ» Äf§³ ¿ { É{ ÉY°e
{Ây Z¯ Ä] Ä¿Y{YM ZÆÀ¯Ye Á ¾ËY { :(Optimistic Method) Ä¿ZÀÌ^Ây Á
Z/ÅÃ{Y{ //Ì̤e Á ¦¸f/z» ÉZ/ÅÃ{Y{ Ä] Z/Æ¿M Ê]Z/Ìf{ Y Á |/ÀÅ{Ê» Ä»Y{Y
Á Ê] ZÅdY{{ZË |Ê» ¹Zn¿Y ĸu» Ä] ÊÀ¯Ye Êf«Á .{ÂÊ» ÉY{/]dY{{Z/Ë
.{{³Ê» «Z c ¾ËY Ì£ { Á ÊËZÆ¿ |Z] Ã|¿ \°e» ÊËZy ³Y
Ã{Z¨fY f» ÉZÅÃ{Y{ Y ZÆÀ¯Ye į ʷ¼ » ÉZźfÌ { Á ¾ËY
Á {{³Ê» ZÆ¿M Ã| ¹Zn¿Y ÉZÅZ¯ ¾f§ ¾Ì] Y hZ] |ÀÀ¯Ê» ÁÄ] Y ZÆ¿M Á |ÀÀ¯Ê»
.{ÁMÊ» ¾ÌËZa Y ºfÌ d Y~·
¹Zn¿Y ĸu» Ä] į ÊËZÆÀ¯Ye ,dÌZy ¾ËY
ZY ] :(Durability) ÊËZËZa ({
.|¿Áʼ¿ ¾Ì] Y ʧ{Ze  Ä] ³Å Á dY Ê¿|¿Z» ½ZiY |À] (Commit)
Ä] DBMS Y É|uYÁ Âe (Durability) ÊËZËZa Á (Atomicity) Ê´qZb°Ë ¶»Z Á{
.{̳ʻ ¹Zn¿Y ºÌ»e Á {³Z] dËË|» |uYÁ ¹Z¿
13 ZÅÃ{Y{ ÃZ´ËZa ʧ »
¥Y|ÅY -1-2
ÃZ´ËZa sY į dY ʼ̼e ¾Ëf¼Æ» ,ZfyZ Ê´¿Â´q Á dËË|» ºfÌ [Zzf¿Y
0Z¬Ì¼ Y ZÅÃ{Y{ ÃZ´ËZa dyZ É| ] ¶uY» ,ºÌ¼e ¾ËY .dY ½M }ZzeY Ä] ZqZ¿ ZÅÃ{Y{
.|Å{Ê» Y« ÌiZe dve
Á ZÅÃ{Y{ ÃZ´ËZa dËË|» ÉZƼfÌ Á Ã{Y{ ÉZÃÌy} ÉZÆ·|» Y¿Y Z] z] ¾ËY {
.| |ÌÅYÂy ZÀM ZÆ¿M ¹Âƨ»
:|ÌZ] Äfy»M Y Ë \·Z» |ËZ] Z¼ ¶§ ¾ËY ½ZËZa {
ZÅÃ{Y{ ÃZ´ËZa Y¿Y x
ÉYÄ]Y Ã{Y{ ÃZ´ËZa ¹Âƨ» x
½M ÉZÆ̳ËÁ Á ZÅÃ{Y{ ÃZ´ËZa dËË|» ºfÌ ¹Âƨ» x
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 16
1
ZÅÃ{Y{ ÃZ´ËZa ÉZÆ·|» Y¿Y -2-2
ÉYÄ]Y ÉZÆ·|» ,ʼË|« ÉZÆ·|» Äf{ Ä Ä] Y Ã{Y{ ÃZ´ËZa ÉZÆ·|» ½YÂe Ê» ʸ¯ ÂÄ]
:{¯ ºÌ¬e |Ë|m ÉZÆ·|» Á
ʼË|« ÉZÆ·|» -1
ÉZÀ^» ] Á{ Å ZÆ·|» ¾ËY .dY ÉYÄ°^ µ|» Á Ê^eY»Ä¸¸ µ|» ZÆ·|» ¾ËY ¾Ëf¼Æ»
´Ë|°Ë Z] ^e» ÉZÅ{¯ c Ä] ZŽM { ZÅÃ{Y{ ÊÀ Ë -|¿YÃ| ÉY~³ÄËZa {¯
dY dy{ ®Ë ¶° Ä] ÊZ^eY ZfyZ Ê^eY»Ä¸¸ µ|» { .|¿ÂÊ» ÊÅ|¿Z»Z
.|Z]Ê» ¥Y³ ®Ë c Ä] ÉY Ä°^ µ|» { įʷZu {
ÉYÄ]Y µ|» -2
.dY ÉYÄ]Y Ã{Y{ ÃZ´ËZa µ|» ,ZÅÃ{Y{ ÉZÃÌy} µ|» ¾Ëe{]Z¯a Á ¾ËfnËY
ÉYÃÂÌ ÉÄÀÌ» { ÊeÓZ¬» 1970 µZ { {¯Ê» Z¯ ¹YÊ]ÉM d¯ { į {Z¯ Z³{Y
Relational Model of į ÉÁ cÓZ¬» Y Ê°Ë .d¿ ZÅÃ{Y{ ÃZ´ËZa dyZ ÉY] |Ë|m
(±] ʯYfY ÉZÅÃ{Y{ ÉZÆ°¿Z] ÉY] ÉYÄ]Y µ|») Data for Shared Data Bank
±] ÉZÅÃ{Y{ ÃZ´ËZa Z] Z¯ Á ÉZÃÌy} ÉY] É|Ë|m ºfÌ Ê] Ä] ,dY{ ¹Z¿
.{ÂÊ» ÊuY ZÅÄ]Y Y ÉYļn» c Ä] µ|» ¾ËY .{Â] ÄfyY{a
µÁ|m c Ä] Ä]Y YË ,dY ½M ʳ{Z µ|» ¾ËY d̬§Â» ¶Ì·{ ¾Ëf¼Æ»
´Ë{ É Y .|À¼Æ§Ê» Y½M ʳ{Z Ä] {Y§Y į dY Ê»Âƨ» į {ÂÊ» ÉZÃ{ZÌa
cZÔY ®¿Z] cZÌÂy ´Ë{ Y .{Y{ É« ZÌ] ®ËÂXe Ä¿YÂfa ÉYÄ]Y µ|»
¾ËY Y Ì¿ SQL.{] ¹Z¿ ½YÂeÊ» Y ZÅÃ{Y{ µÔ¬fY Á ZÅÃ{Y{ Ä] Ê]ZÌf{ ½Z¬e ÉYÄ]Y
.dY YÂfY ½M ºÌÅZ¨» ÉZÀ^» ] Á |À¯Ê» ÉÁÌa µ|»
Ŀ³½Z¼Å free-form ÉZÅ{¯ c Ä] {¯ Ä°ÀËY ÉZm Ä] ÃÂÌ ¾ËY {
d]Zi µÂ Z] ÉZÅ{¯ Z] Ê·Á|m Y ,|¿Â ÃÌy} {Â] Ã|»M CODASYL Á { į
į ÊËZm { Á Ã|À¯Ya ÉZÅÃ{Y{ ÃZ´ËZa ÉZÃÌy} ÉY] ʼfÌ ¾ÌÀq.|Ê» Ã{Z¨fY
¶u Y ¶°» ¾ËY ÉYÄ]Y µ|» .{Y|¿ ÊËMZ¯ ,|ÀfÅ Ê·Zy {¯ ÉZÅÃ{Y{ Y Ê ]
ZÀ Á |¿ÂÊ» ºÌ¬e µÁ|m É®Ë Ä] ZÅÃ{Y{ į c ¾Ë|] .dY Ã{¯
.|ÌÀ¯ Ä mY» ÊÅ°¿Y ÉZ«M ¦Ì·Ze ZÅ Ã{Y{ ÃZ´ËZa É{ZÌÀ] ºÌÅZ¨» [Zf¯ ¹ZÆq Zf¨³ Ä] fÌ] Ä ·Z» ÉY] .1
17 ½M dËË|» ÉZƼfÌ Á ZÅÃ{Y{ ÃZ´ËZa Y¿Y
.|¿Ì³Ê» Y« µÁ|m { ZÌ¿ c { Á |¿{³Ê» kZy ʸY µÁ|m Y ÉZÌfyY
Z¯ Ä] ÃÌ£ Á ½Z¿M Ê¿Z¿ Á Ê»ZY ,½Y]Z¯ cZÔY Ê]ZË{ ÉY] ʼfÌ ¾ÌÀq
{» į ÊËZźfËM Á |¿Ì³Ê» ÉZm {¯ ®Ë { ÊËZ¼Ìa Á { ZÅÃ{Y{ .{ÁÊ»
.{Â] |ÀÅYÂz¿ Ì¿ ZÅÃ{Y{ ÃZ´ËZa { ,|¿Ì´¿ Y« Ã{Z¨fY
µÁ|m ,Ê»ZY µÁ|m Ôj» ,ÉYÄ¿Z³Y|m µÁY|m { ÉYÄ]Y ÃÂÌ { ZÅÃ{Y{
.dY ºfÌ ¾ËY { ºÆ» Äf°¿ cZÔY ¾Ì] Z^eY ÉY«] .|¿Ì³Ê» ÉZm ZÅÊ¿Z¿
Á |¿ÂÊ» ʧ » |̸¯ ½YÂÀ Ä] cZÔY ÉZÅdÌ] Y Ê ] ÉYÄ]Y µ|» {
,{ÂÊ» ÉÁM¼m ]Z¯ cZÔY į Ê»Z´ÀÅ .|ÀfÅ ÊZy {¯ ´¿ZÌ] 0YvÀ»
|̸¯ ÉÂnfm Z] ,|¿ÂÊ» ÃÌy} ÉZÌfyY µÁY|m { į Y cZÔY ¾ËY ½YÂeÊ»
.d§ZË ÄÂ]»
|Ë|m ÉZÆ·|» -3
Á ZÅZÌ¿ Ê»Z¼e Ä] ÊË´zZa Ä] {Z« ËZÅZÌ¿ ¹Z¼e Z] ÉYÄ]Y µ|» Ä°ÀËY Ä] ÄmÂe Z]
½YÂeÊ» ZÆ¿M Éĸ¼m Y į |¿Y Ã| ʧ » É|Ë|m ÉZÆ·|» dÌ¿ ÉÁ»Y ÉZÅ{]Z¯
:{¯ ÃZY Ë {Y» Ä]
ÊËZ¼Ìa ÉZÅÃ{Y{ ÃZ´ËZa
|Ë{³ \m» Y ÃÂÀ»Ä¼Å ÉZÅÃ{Y{ ÃZ´ËZa ÉZźfÌ ËY|Ìa ,eÂÌb»Z¯ É]Z¯ |
,¾» p] ·Zq .| Äf§³ Z¯ Ä] ÉZne z] { ÊËZźfÌ ¾ÌÀq 1960 YÁY { Á
½ZÌÀ] Y Group Database Task ÃÁ³ , IDS ¹Z¿ Z] ÊeÓÂv» ¾ÌÀq Y Ê°Ë Ã|ÀË¿
1971 µZ { ZÆ¿M .| COBOL ÉZ{Y|¿ZfY Á {ZnËY µÁ» ÃÁ³ ¾ËY į {ZÆ¿
¾ËY .dY{ ¹Z¿ Approach CODASYL {Y|¿ZfY ¾ËY .|¿{¼¿ Ä Y {Ây {Y|¿ZfY
¾Ì·ÁY ÉY] ZÅÃ{Y{ ÃZ´ËZa į Ê»Z´ÀÅ .{Â] ZÅÃ{Y{ ļn» Êf{ ËZ¼Ìa ] ÊÀf^» ÃÂÌ
\Ìee ¾Ì¼Å Ä] Á {¯Ê» ÃZY ZÅÃ{Y{ ÃZ´ËZa { {¯ ¾Ì·ÁY Ä] ,{¯Ê» Z] Y Ä»Z¿] Z]
{¯ ®Ë Ä] Êf{ ÉY] Ë¿ĻZ¿] .|Ê» ÃZY Ã{Y{ ÉZÅz] ËZ Ä] Ì¿
.|] ¿{» {¯ Ä] Ze |À¯ µZ^¿{ \Ìee Ä] Y ZųÃZY ¾ËY Ze {Â] Â^n» Zy
ÉY] |ËZ] "|ÀÀ¯Ê» ʳ|¿ |W { į É{Y§Y ¹Z¼e ¾f§ZË" |À¿Z» Ã{Z ÉZÅ Query {
{ÂmÁ find ¹Z¿ Ä] ÉÂf{ Á |Ê» ÊË¿ĻZ¿] ZÅÃ{Y{ ļn» ¶¯ { Ânfm
ºfÌ ¾ËY .dY{ IMS ¹Z¿ Ä] ÊËZÅÃ{Y{ ÃZ´ËZa dËË|» ºfÌ IBM d¯ .dY|¿
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 18
Ã{Z¨fY ÉYÄ°^ µ|» Y į ½M ¥Ôy] Z»Y ,{Â] CODASYL Ä]Z» ¹Âƨ» ¿ Y
.{]Ê» Z¯ Ä] Y Ê^eY»Ä¸¸ µ|» IMS ,{¼¿Ê»
Y Ã{Z¨fY Z] |¿{Â] Â^n» ½Y]Z¯ ,cZÔY ®¿Z] dËË|» ¹Z¿ ½|»M {ÂmÁÄ] Y Ìa
\Ìee ¾ËY Ä] .|ÀÀ¯ ÊÅ|¿Z»Z ZƸËZ§ { Y cZÔY ,Ê]ZËZ] Á ÃÌy} ÉZÅY§Y¹¿
¾ÌÀr¼Å Á |¿{¯Ê» Ã{Z»M Ä¿Z³Y|m Y ÄÂ]» ÉZÅÃ{Y{ dËZ]Ê» {]Z¯ Å ÉY]
.{Â^¿ ¾°¼» Ê·Â^« ¶]Z« t { ZÅÃ{Y{ YfY
Ê·Âve ,DBMS ZfyY Ä] ZË Á cZÔY ®¿Z] dËË|» ¹Z¿ ½|»M {ÂmÁÄ] Z]
į \Ìee ¾ËY Ä] .|»M {ÂmÁÄ] cZÔY ÊÅ|¿Z»Z Á Ê]ZËZ] Á ÃÌy} z] { ºÌ
Ŀ³ŠÁ Ã{Â] DBMS ZÌfyY { ¬§ Á ¬§ ZÅÃ|¿Áa Ê»Z¼e cZÔY ®¿Z] Å {
.{̳ʻ ¹Zn¿Y ½M ªË Y ZÆÀe ZÅ Ã{Y{ Ä] Ê]ZÌf{
Ä»Z¿] |Àq Y ÉYļn» ZË ®Ë ,(DBMS) ZÅÃ{Y{ ÃZ´ËZa dËË|» ºfÌ
ÉZÅÃ{Y{ Y Ê¼Ì Ä¼n» ,ZÅÃ{Y{ ÃZ´ËZa dËË|» ÉY] į dY ÉeÂÌb»Z¯
.dY Ã| ÊuY ,½Y]Z¯ ÊfYÂy{ ÉZÅÃ{Y{ ÉÁ ] ÊËYmY cZ̸¼ Á Äf§ZËdyZ
ºfÌ {]Z¯ Y ÊËZÅĿ¼¿ ,f» ½Z^Ìfa Á Ê¿Z¿Y ]ZÀ» ,ÉY|]Zu ÉZźfÌ
s» ±] ÉZÅd¯ { ¬§ fÌa į ZźfÌ ¾ËY .|ÀfÅ ZÅÃ{Y{ ÃZ´ËZa dËË|»
dËË|» ÉZźfÌ cÁZ¨e .|¿ÂÊ» [Âv» d¯ { ʼƻ z] 0YÌyY ,|¿{Â]
½YÂÀ Ä] ¯~» ÉZźfÌ Ä¯ dY ¾ËY { ZÅÃ{Y{ ÃZ´ËZa ÉZÅÄ»Z¿] Z] ZÅÃ{Y{ ÃZ´ËZa
{ ,ʬ¿ ¾ÌÀq ÉZ¨ËY ÉY] ZźfÌ ¾ËY .|¿YÃ| ÊuY Ã]Z¯|Àq ºfÌ Âe»
.|ÌÀ¯ Ä mY» ÊÅ°¿Y ÉZ«M ¦Ì·Ze ZÅ Ã{Y{ ÃZ´ËZa É{ZÌÀ] ºÌÅZ¨» [Zf¯ º Zf¨³ Ä] fÌ] Ä ·Z» ÉY] .1
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 20
.|ÌÀ¯ Ä mY» ÊÅ°¿Y ÉZ«M ¦Ì·Ze ZÅ Ã{Y{ ÃZ´ËZa É{ZÌÀ] ºÌÅZ¨» [Zf¯ ºf¨Å Zf¨³ Ä] fÌ] Ä ·Z» ÉY] .1
21 ½M dËË|» ÉZƼfÌ Á ZÅÃ{Y{ ÃZ´ËZa Y¿Y
.|À¯Ê» µfÀ¯ ,ZÅÃ{Y{ ÃZ´ËZa { Y ½Z»Z (ZŶËZ§ Á ZÅ{¯ ,ZÅ|¸Ì§) ÉZÅÃ{Y{ Ê]ZËZ]
dËË|» ºfÌ .{Y{ Ã|Æ ] Ì¿ Y ZÅÃ{Y{ ÃZ´ËZa dv Á dÌÀ»Y µfÀ¯ ,ºfÌ ¾ËY
|Å{Ê» Âf{ ¶»Z ºfÌ Ä] Á {Ë~aÊ» Ä»Z¿] Y Y Ã{Y{ ÉZÆfYÂy{ ,ZÅÃ{Y{ ÃZ´ËZa
,{̳ʻ Y« Ã{Z¨fY {» ʼfÌ ¾ÌÀq į Ê»Z´ÀÅ .|Å{ µZ¬f¿Y Y \ZÀ» ÉZÅÃ{Y{ Ze
Ì̤e e½ZM Ì¿ ÊeZÔY ÉZźfÌ ,|]ZË Ì̤e Ê¿Z»Z ÊeZÔY ÉZÆË|À»ZÌ¿ ³Y
.|À¯Ê» Ê¿Z^Ìfa ZÅÃ{Y{ ÃZ´ËZa dv Y ¯~» ºfÌ .d§ZË |ÀÅYÂy
Y {¯ ®Ë ,Äv· Å { ]Z¯ ®Ë Y Ì] |Å{ʼ¿ ÃZmY į \Ìee ¾Ë|]
ÃZ´¿ ZÅÃ{Y{ ÃZ´ËZa kZy { Y ÉY°e ÉZÅ{¯ ºfÌ ¾ËY .|À¯ Ê¿ZÁÄ]
ZÅÃ{Y{ ÃZ´ËZa { |À¿YÂeʼ¿ ,Éf» ÃZ¼ ®Ë Z] Éf» Á{ pÌÅ ,µZj» ÉY] .{Y{Ê»
ºÅY§ ZÅÃ{Y{ ÃZ´ËZa ʸ»Z e Ê¿Z Á Ä] Á {ÁÁ ÉY] ÊÁ ºfÌ ¾ËY .|¿Â {YÁ
,½Y|À»Z¯ ,½ZËf») Ì¿ ÊeZ» Y Z¯ Á \¯ cZÔY ºfÌ ®Ë .{ÁMÊ»
(ÃÌ£ Á ZÅ|Ëy ,ZÅdyY{a ,cZZ¨) ½Âq ÊËZÅdÌ·Z § Á (ÃÌ£ Á ½Z³|ÀÁ§
ÊÅ|¿Z»Z ÃÂv¿ ÃZ]{ É̳ºÌ¼e |ÀËM§ ,ZÅÃ{Y{ ÃZ´ËZa ÊuY .dY Ã| ¶Ì°e
ÃZ´ËZa dËË|» ºfÌ .dZÅ{¯ ¾Ì] Z^eY ÉY«] Á ZÅ{¯ Y¿Y { ZÅÃ{Y{ ¾ËY
.|Å{ ½Z¿ z] iY Â Ä] ½Z»Z { Y ZÆ¿M Z^eY Á ZÅÃ{Y{ ZfyZ |¿YÂeÊ» ZÅÃ{Y{
®Ë .ÉYÄ]Y Á ÉYÄ°^ ,Ê^eY»Ä¸¸ :Y |ÀeZ^ Ê¿Z»Z µÁY|f» µ|» ¿ Ä
.{ÁM ºÅY§ Y Á Ä Å ZË Á{ ,®Ë dY ¾°¼» ZÅÃ{Y{ ÃZ´ËZa dËË|» ºfÌ
ÃZ´¿ Y Ê «YÁ ÉZÅÃ{Y{ ÃZ´ËZa į |ÀfÅ ÊËZÅeÂÌb»Z¯ ,ZÅÃ{Y{ ÃZ´ËZa ÉZÅÁ
.|ÀÀ¯Ê» YmY Y ÄÂ]» Y§Y¹¿ Á ZÅÃ{Y{ ÃZ´ËZa dËË|» ºfÌ ¬§ Á |¿Y{Ê»
ÉY] RAID ®Ë{ ÉZÅÄËYM Z] ÉYÃ|¿Y{a |Àq ÉZÅeÂÌb»Z¯ ZÅÁ ¾ËY Ó¼ »
.|ÀZ]Ê» ÉZÃÌy}
x IBM (DB2)
x FileMakerˬ Inc (FileMaker Pro)
x IBM (IMS)
x Informix
x Computer Associates (Ingress)
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 22
x Borland (Interface)
x Microsoft (Microsoft SQL Server)
x Microsoft (Microsoft Access)
x Mimer AB (Mimer SQL)
x Oracle
x Sybase
x NCR Corporation (Teradata)
Open Source:
¥Y|ÅY -1-3
Ã{Y{ ÃZ´ËZa dËË|» ÉY] ÉY§Y¹¿ Äq Y |ÌÅYÂyÊ» |Ë{¯ z» į ¾ËY Y | ]
.|ÌÅ{ ¹Zn¿Y |ËZ] į dY ÉZ¯ ¾ËeºÆ» Á ¾Ì·ÁY Ã{Y{ ÃZ´ËZa ÊuY ,|ÌÀ¯ Ã{Z¨fY {Ây
ºÌÀ¯Ê» Ê] É{]Z¯ Ä^Àm Y ,Y ZÅÃ{Y{ ÃZ´ËZa ÊuY ÊZY ¶uY» z] ¾ËY {
.dyY{a ºÌÅYÂy ZÆ¿M Y ®Ë Š»M Á s Ä] [Zf¯ Ä»Y{Y { Á
:|ÌZ] Äfy»M Y Ë \·Z» |ËZ] Z¼ ¶§ ¾ËY ½ZËZa {
ZÅÃ{Y{ ÃZ´ËZa ÊuY ÊZY ¶uY» x
½M ¹Á· Á ÉZ·|» ¹Âƨ» x
½M Y¿Y Á É·Á|f» x
½M {]Z¯ Á UML ¹Âƨ» x
ʬÀ» ÊuY Ä] UML ZË ER ÉZÅY{¼¿ ¶Ë|^e Á x
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 24
1
ZÅÃ{Y{ ÃZ´ËZa ÊuY ÊZY ¶uY» -2-3
:Y |ÀeZ^ É{]Z¯ Ä^Àm Y ,ZÅÃ{Y{ ÃZ´ËZa ÊuY ÊZY ¶uY»
ZÅZÌ¿ Ê|ÀÆ» ¹Zn¿Y Á ºfÌ dyZÀ Á Ä ·Z» -1
(...ZË UML ZË ER Á Z]) ZÅÃ{Y{ ÊËZÀ » ÉZ·|» -2
(Ê°Ȩ̈ ÊuY Á ʬÀ» ÊuY) ZÅÃ{Y{ ÃZ´ËZa ÊuY -3
ZÆÀ¯Ye ¾ÌÌ e Á É{°¸¼ ¶Ì¸ve ¹Zn¿Y Á ÊZÀY]Y -4
É]Z¯ ÉZÆYÁ Á É{]Z¯ ÉZÅÄ»Z¿] ÊuY Á ÉZÃ{ZÌa -5
ºfÌ ÉYmY Á ÊËY{µZ°Y ,de -6
ÃZ^fY Z¯ ¾ËY Ê·Á ,|ÌÀ¯ ÃÌy} µÁ|m ®Ë { Y ½ZfËZÅÃ{Y{ ¹Z¼e |Ì¿YÂeÊ» Z¼
®Ë { Yn» cÂÄ] Y » Å Ä] Â]» ÉZÅÃ{Y{ dY fÆ] Á dY ʳ]
,|À¯Ê» ÉY|Æ´¿ Y Éf» ÉZÆZ¨ į ÉYÃ{Y{ ÃZ´ËZa { 0Ôj» .|ÌÀ¯ ÃÌy} µÁ|m
:|ÌZ] ÄfY{ Y Ë ÉZÆ·Á|m dY ¾°¼»
Éf» Y¿Y ZÆËf»
¶¬¿ Á ¶¼u ÉZÆÁ cZZ¨
cÓÂv» dyY{a ÉZÅÃÁ{
½Z³|ÀÁ§
Y {Ây µÁY|m |ËZ] µÁ|m Å ÉZÅ|¸Ì§ ½{¯ z» Á ZÆ·Á|m ¾ÌÌ e Y | ]
µZj» ÉY] Á Ã{Â] \e» Ã{Y{ ÃZ´ËZa į dY ¾ËY ÉZµZ»¿ Y ¥|Å .ºÌÀ¯ ÉZµZ»¿
Ze Y ZÆ·Á|m Ã{Y{ ÉZµZ»¿.|ÀËZÌ] ZÆ·Á|m ¹Z¼e { ÁY
{M Á Éf» ¹Z¿ |Z^¿ ZÌ¿
.|Z] ÄfY|¿ {ÂmÁ ÃZ^fY Á Zy ½Z°»Y Ze {ZÊ» Ã{Z]a Á Ã{§ ½Z°»Y |u
.|ÌÀ¯ Ä mY» ÊÅ°¿Y ÉZ«M ¦Ì·Ze ZÅ Ã{Y{ ÃZ´ËZa É{ZÌÀ] ºÌÅZ¨» [Zf¯ ºÅ{Ì Zf¨³ Ä] fÌ] Ä ·Z» ÉY] .1
25 ZÅ Ã{Y{ ÃZ´ËZa ÊuY
OSA É·Á|f» .3
Hodge/ Mock É·Á|f» .4
Booch É·Á|f» .5
OMT É·Á|f» .6
Fusion É·Á|f» .7
ZÆfÌ·ÂX» ] ÊÀf^» ÊuY É·Á|f» .8
,dY Ã| Ã{Y{ s ZÅÃ{Y{ ÃZ´ËZa [Zf¯ { ¶»Z¯ ÂÄ] ER Á Ä°ÀËY ¶Ì·{Ä]
.ºËY{aÊ» UML Á Ê] Ä] d¼« ¾ËY { Z»
Ë~a {» į ÉZ·|» {Y|¿ZfY ½Z] ¦Ë e ÉY] dY ÊÔe UML
Á Y³VÌ ÉZƼfÌ {ZnËY ÉY] É] ÉZ·|» ½Z] UML .dY Äf§³ Y« ½Z´¼Å
.|Z]Ê» (Component-Based) YmY ] ÊÀf^»
UML ʧ » -1
¾Ì » ÉY] Ê¿Z] (Unified Modeling Language) |vf» ÉZŵ|» ½Z] ZË UML
,ÉY§Y¹¿ ÉZÅ ºfÌ cÓÂ/v» ½{/¯ |Àf» Á ¾fyZ ,½|̯ ËÂe Ä] ,½{¯
.dY ÉY§Y ¹¿ Ì£ ÉZÅ ºfÌ ËZ Á ÉZne ÉZźfÌ
{ ZÆ¿M d̬§Â» į ʼ¸ -Ê|ÀÆ» Ê·Z ÉZ°¼Å ®Ë ½{Y{ ½Z¿ ÉY] UML
.|Z]Ê» dY Ã| d]Zi ¶»Z¯ Á ±] ÉZźfÌ ÉZŵ|»
UML ¹Âƨ» -2
UML ÉÁ»Y ÉY³VÌ ÉZƼfÌ Ä Âe ÉZÌ¿{ { \·Zm ZÌ] ÉZÅY]Y Y Ê°Ë
Ä] Y ½Z°»Y ¾ËY įÉÂv¿Ä] ,|À¯ Ê» {ZnËY É] ÉZµ|» ½Z] ®Ë UML .dY
cZ» ʳ{Z Ä] Á |ÀËZ¼¿ |Ì·Âe Y ʸ¯ ÉZÆu Ze |Å{Ê» ʼfÌ Å ½Z³|¿Z
.{ÁMÊ» ºÅY§ ½Y´Ë{ Z] ZÆu ¾ËY Z^eY ÉY] ʯ{ ¶]Z« |¿Á Á |ÀËZ¼¿ { Y
Á (Rumbaugh) Z^»Y ,(Booch) oÂ] Z¯ ÄnÌf¿ Á °¨e Ã|ÌËY UML
.{Â] (Jacobson)¾^¯Zm
UML cZËÂfv» -3
UML ÉZÅY{¼¿ ZÆ¿M \̯e Y į dY Ê/°Ì§Y³ /À É{Y|/ e ¶»Z UML
¾ËY \̯e ÉY] ÊÀÌ¿Y« ÉYY{ ¾ËY]ZÀ] dY ½Z] ®Ë UML ½Âq.|¿Ì³Ê» ¶°
.|Z]Ê» ZÀ
Ä mY» § dËY|Å ÉZ«M ¦Ì·Ze Á ļme UML Y É̳ÃÆ] Z] Y§Y ¹¿ Ê|ÀÆ» [Zf¯ Ä] fÌ] Ä ·Z» ÉY] .1
.|ÌÀ¯
29 ZÅ Ã{Y{ ÃZ´ËZa ÊuY
˺
ER µ|» -7-3
®¿Z] ÊuY |»MZ¯ ÉZÅY]Y Y Ê°Ë EER ¹Z¿ Z] ½M Äf§ZË f³ µ|» Á ER µ|»
ÉZÆz] ÉYY{ {Ây ¶° ¾ËeÃ{Z { cZÔY ®¿Z] Å µ|» ¾ËY { .dY cZÔY
:dY Ë
(Entity) dË{Âm» -1
{ ËÂe Ä] ZË Á |¿Y{ ÊmZy {ÂmÁ cZÔY ®¿Z] { į dY ÊËZÅÌq ´¿ZËZ¼¿
.|ÌÀ¯ Ä mY» ÊÅ°¿Y ÉZ«M ¦Ì·Ze ZÅ Ã{Y{ ÃZ´ËZa É{ZÌÀ] ºÌÅZ¨» [Zf¯ ¹Â Zf¨³ Ä] fÌ] Ä ·Z» ÉY] .1
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 30
|u Á µZeY
¾ËY .|¿ÂÊ» ºÌ¬e M-N , M-1 , 1-1 Äf{ Ä Ä] µZeY ¿ Zv· Y Z^eY
{ Ôj».|ÀZ]Ê» {Y| e Äq dË{Âm» Å Y Z^eY ½M { į |ÀÅ{Ê» ½Z¿ cÓZeY
¾Ë|Àq {ZfY ®Ë įʷZu { {Y{ Z¼ÀÅY {ZfY ®Ë ZÆÀe Ân¿Y{ Å ,Z¼ÀÅY {ZfY ÄÀÌ»
.( M-1 Z^eY).|À¯Ê» ÊËZ¼ÀÅY Y Ân¿Y{
{ ¾ÌËZa Á ÓZ] |u cÂÄ] ½YÂeÊ» Ì¿ Y ZÆfË{Âm» ªÌ«{ {Y| e Z^eY Å {
½M { |Z] ÉZÌfyY dË{Âm» ®Ë ÉY] Z^eY { d¯ įÊe { .d¿ f¿Ya
.|À¯Ê» Ê·Zy Âe ÃËY{ ®Ë µZeY
Z^eY { d¨
ËZ¼¿ É· Á ¶Ìf» ¹Z£{Y Z] Z^eY ½M |Z] d¨ ÉYY{ Z^eY {Ây įÊe {
.{ÂÊ» ¶Ì°e ÄÂ]» ÉZÆfË{Âm» ¹Z¼e |̸¯ Y ½M |̸¯ Á {ÂÊ» Ã{Y{
É{ÂmÁ Ê´f]YÁ
{ ÊÀ Ë ,|Z] É´Ë{ dË{Âm» {ÂmÁ Ä] Äf]YÁ dË{Âm» ®Ë {ÂmÁ dY ¾°¼»
 Ä] ºÅ Äf]YÁ ÉZ/Å |Z] ¹Ó dË{Âm» ½M Y É ¥~u cÂ
Y Äf]YÁ dË{Âm» Á É{ÂmÁ Ê´f]YÁ Y Ê´f]YÁ ¿ ¾ËY .|¿Â ¥~u Z/¯{Ây
.|À»Z¿Ê» Äf]YÁ dË{Âm» ZË ¦Ì dË{Âm»
Äf°¿ .{ÂÊ» Ã{Z¨fY Âe { Âe ¶Ìf» Á{ Y ¦Ì ÉZÆfË{Âm» ËZ¼¿ ÉY]
½M Ä] į Y ʸY dË{Âm» |̸¯ dËZ]Ê» Äf]YÁ ÉZÆfË{Âm» į ÄfY ¾ËY ºÆ»
.|ÀZ] Ì̤e Á ¥~u ,ÊËZZÀ ¶]Z« ʳ{Z Ä] Ze |¿^] gY ,|¿YÄf]YÁ
É] gY
ÉY] .|¿Y{ f» cZ¨ cZÔY ®¿Z] ®Ë { ZÆfË{Âm» į |f§YÊ» ©Z¨eY ZÌ]
¾¨¸e ,
{M ,¹Z¿ |À¿Z» ÊeZ¨ ÉYY{ |À»Z¯ Á Ân¿Y{ ,{ZfY Y ºY {Y§Y Ê»Z¼e µZj»
É]gY Y ,ºÌÀ¯ É̳¸m Äf{ Å ÉY] cZ¨ Ã{ÂÆÌ] Y°e Y Ä°ÀËY ÉY] .|ÀfÅ
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 32
½Z°Ìa Á h¸j» Z] Á ºÌ»Z¿ Ê» "is-a" ZË Á "dÅ" Y Z^eY ¿ ¾ËY .ºÌÀ¯Ê» Ã{Z¨fY
.ºÌÅ{Ê» ËZ¼¿
1
ZÅÄ]Y Ä] UML Á ER ÉZÅY{¼¿ ¶Ë|^e Á -8-3
sY Á {ÂÊ» ÄWYY ºfÌ Y ÊYf¿Y µ|» ®Ë N§ ZÅÃ{Y{ ÉZ·|» ĸu» {
,«YÁ { .|ËZ¼¿ ZÅÃ{Y{ ÃZ´ËZa ÉZÃ{ZÌa Ä] Á ,µ|» ¾ËY
ZY ] |ËZ] ZÅÃ{Y{ ÃZ´ËZa
µÁY|m ,ZÆ¿M Y ®Ë Š¿ Á cZ¨ Ä̸¯ ,{Âm» ÉZÅY{¼¿ Y Ã{Z¨fY Z] |ËZ] sY
.|À¯ z» Á ¾ÌÌ e Y ...Á ZÆ¿M ¾Ì] Z^eY ¿ Á ZÌ¿ {»
,|Å{Ê» ½Z¿ Y ½YÂf ®Ë ÉZÆfÌ·Z § Y Êz] į ,Ë ER Y{¼¿ µZj» ÉY]
:|ËÌ´] ¿{
¹Z¿ ¹Z¿
ʸ» |¯
Ì» ÃZ¼
Z¨ {Y| e
{ÁÁ ½Z»
.|ÌÀ¯ Ä mY» ÊÅ°¿Y ÉZ«M ¦Ì·Ze ZÅ Ã{Y{ ÃZ´ËZa É{ZÌÀ] ºÌÅZ¨» [Zf¯ ºÅ{Ì Zf¨³ Ä] fÌ] Ä ·Z» ÉY] .1
33 ZÅ Ã{Y{ ÃZ´ËZa ÊuY
,{Ây ÉZÅÃ{Y{ ÃZ´ËZa Ê°Ȩ̈ Á ʬÀ» ÊuY Êf{ Á dv Y ½ZÀ̼Y ÉY]
.|ÌÀ¯ Ã{Z¨fY ,|ÀfÅ Z¯ ¾ËY ¹Zn¿Y fz» į ÊËZÅY§Y¹¿ Y |Ì¿YÂeÊ»
¾ËY .dY PowerDesigner ZÅY§Y ¹¿ ¾ËY ¾ËfnËY Á ¾Ëf§Á » Y Ê°Ë
Á |Å{Ê» Y ...Á Y³VÌ µ|» ,Ê°Ȩ̈ µ|» ,ʬÀ» µ|» ÊuY ½Z°»Y Z¼ Ä] Y§Y¹¿
Y Ã{Z¨fY Z] |Ì¿YÂeÊ» ½ZËZa { ¾ÌÀr¼Å.|À¯Ê» ¾Ì¼e Y ÊuY ¾ËY dv
.|ÌÀ¯ |Ì·Âe Y {Ây ÉZÅÃ{Y{ ÃZ´ËZa ©Â§ ÉZÅÊ/uY
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 34
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 35
¹ZÆq ¶§
¥Y|ÅY -1-4
Á \¿ ÉZÆf·Zu Y¿Y į dY ¹Ó Y|f]Y SQL Server 2000 Y Ã{Z¨fY ÉY]
ËYËÁ [Zzf¿Y.ºÌÀ¯ \¿ Y ½M ºÌ¿YÂf] b Á ºÌZÀ] Y ½M ¦¸fz» ÉZÅËYËÁ
.dY d̼ÅY WZu ZÌ] ZÆ¿M Y ®Ë Å ÉZÆ̳ËÁ Y Ã{Z¨fY ÉY] \ZÀ»
SQL -d§ZÁ°ËZ» Database Á{ ¾ËY ¾Ì] ÉYÄËZ¬» z] ¾ËY { ¾ÌÀr¼Å
ZÀM ®Ë Å \ËZ » Á ZËY» Z] Z¼ Ze ºÌÅ|] ¹Zn¿Y - ACCESS 2000 Á Server 2000
.|ÌÀ¯ [Zzf¿Y Y {Ây Ä»Z¿] ¾f¿ ÉY] ¹Ó Database |Ì¿YÂf] eduY Á |ËÂ
:|ÌÅ{ ¹Zn¿Y Y Ë ÉZÅZ¯ |Ì¿YÂf] |ËZ] ¶§ ¾ËY ½ZËZa {
SQL Server 2000 ¦¸fz» ÉZÅ ËYËÁ \¿ x
ZÅËYËÁ Y ®Ë Å ÉZÆ̳ËÁ ½ZÌ] x
˵SQL Server 2000 ½ZÌ» ...Á ZÅdË{Á|v» ,ZÅd̸]Z« ,ÉY§Y¹¿ ÉZÅZÌ¿ ÄËZ¬» x
ACCESS 2000 Á
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 36
¾ËY ÉZÆf̸]Z« Y ÉZÌ] ,ºÌÀ¯ \¿ Windows ME Á Windows 98 ÉÁ ] ³Y Äf^·Y
.{ÁÊ» ¾Ì] Y Package
Windows 2000 ÉZƸ»ZºfÌ ÉÁ ] ËYËÁ ¾ËY \¿ d·Zu ¾ËfÆ]
.dY Windows XP Professional Á Professional
½M \ËZ » § Á de Ì¿ Á SQL d§Ìa Á Ä Âe dÆm 0Z§ ËYËÁ ¾ËY
.{¯ Ã{Z¨fY É|Ì·Âe Á ÉZne ÉZÆÌv» { ½M Y ½YÂeʼ¿ Á {ÁÊ» Z¯Ä]
®Ë mÄ] ,dY SQL Server 2000 ÉZÆf̸]Z« ļŠÉYY{ ËYËÁ ¾ËY
ÉZƸ»Z ºfÌ ÉÁ ] Á Graphical utilities' support for language settings:{»
:{ÂÊ» \¿ Ë
Windows 2000 Datacenter Server
Windows 2000 Advanced Server
Windows 2000 Server
Windows 2000 Professional
Windows NT 4 Serverˬ Enterprise Edition
Windows NT 4 Server
Windows NT 4 Workstation
|Z]Ê» Personal Edition |À¿Z¼Å ZÆf̸]Z« Á ZÆ̳ËÁ Y Êy] |«Z§ ËYËÁ ¾ËY
:|À¯Ê¼¿ Ê¿Z^Ìfa Ì¿ Ë ÄÌy Á{ Y ÃÁÔÄ]
Full-text search capabilities
Graphical administration and developer tools and wizards
Analysis Services
:{ÂÊ» \¿ Ë ÉZŶ»Z ºfÌ ÉÁ ] ËYËÁ ¾ËY
Windows 2000 Datacenter Server
Windows 2000 Advanced Server
Windows 2000 Server
Windows 2000 Professional
Windows NT 4 Serverˬ Enterprise Edition
Windows NT 4 Server
Windows NT 4 Workstation
Windows Millennium Edition
Windows 98
YmY Ìv»
¶]Z« CE Á 2000 Á NT Á 9x Á|ÀËÁ |À¿Z» ÉÁ|ÀËÁ ÉZÅÌv» ÉÁ ¬§ SQL 2000
:dY \¿ ¶]Z« Ë ÉZÅ ºfÌ Y ®Ë Å ÉÁ] ACCESS Ê·Á ,dYmY
(Service Pack 6) 6 ®a ËÁ Z] NT4 Á ME Á 98SE Á 98 Á 95 Á|ÀËÁ
.½M Y | ] ÉZÅÁ|ÀËÁ Á XP Á 2000 Á|ÀËÁ Á
Hardware Requirements
Processor Pentium 75 MHz or higher
8 MB of RAM required for Access 2000ˬ
plus 4 MB of RAM for each application running simultaneouslyˬ
plus memory for the operation system:
Memory 16 MB of RAM for Windows 95 or Windows 98
32 MB of RAM for Windows Me or Windows NT ·64 MB of
RAM for Windows 2000
128 MB of RAM for Windows XP
Hard disk
Access 2000 requires over 30 MB of hard disk space
space
ÉY§Y¹¿ ÉZÅZÌ¿
ZÌ¿ Ë ÉZÅY§Y¹¿ Ä] YmY ÉY] į |Z]Ê» ËYËÁ 7 ÉYY{ SQL server 2000
:{Y{
SQL
Operating Enterprise Standard Personal Developer Desktop
Server
System Edition Edition Edition Edition Engine
CE
Windows CE No No No No No Yes
Windows 9x No No Yes No Yes No
Windows NT 4.0
Workstation with No No Yes Yes Yes No
Service Pack 5
Windows NT 4.0
Server with Yes Yes Yes Yes Yes No
Service Pack 5
Windows NT 4.0
Server Enterprise
Yes Yes Yes Yes Yes No
Edition with
Service Pack 5
Windows 2000
No No Yes Yes Yes No
Professional
Windows 2000
Yes Yes Yes Yes Yes No
Server
Windows 2000
Yes Yes Yes Yes Yes No
Advanced Server
Windows 2000
Yes Yes Yes Yes Yes No
DataCenter
Windows XP
No No Yes Yes Yes No
Professional
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 42
Á {Y|¿ /fÌ] ËY/ËÁ ®Ë ¶Y { ¯Y ®¿Z/] SQL server 2000 Z] Ä/ËZ/¬» {
:{Â \¿ Ë ÉZÅ ºfÌ ÉÁ |¿YÂeÊ»
Á XP Á 2000 Á|ÀËÁ Á 6 ®a ËÁ Z] NT4 Á ME Á 98SE Á 98 Á 95 Á|ÀËÁ
.½M Y | ] ÊËZÅÁ|ÀËÁ
ZÅ d¼Ì« ÄËZ¬»
.{Y{ ZÅÁ ÉÁ \¿ ÉY] Ân» Á{ Zu µZu { SQL 2000
x Processor license.
x server/per-seat Client Access License (CAL).
Á dÌ¿ d§ZË ¶]Z« ZÅÊÁ§Ã{y { ½ÂÀ¯Y ºÅ 2000 ̧M |À¿Z» 2000 ¯Y ®¿Z]
.dY ÉY|Ëy ¶]Z« XP Äz¿ |À¿Z» cÓÂv» ¾ËY |Ë|m ÉZÅÄz¿
,½M |Ë|m ËYËÁ ÉZmÄ] d§ZÁ°ËZ» ʼË|« cÓÂv» |Ëy Ä] Z°Ë»M {)
(dÌ¿ Ê^·Zm Z¯ ½Y|Àq Á {ÂÊ» Äf¨³ ¾fY|Àa Yº¯ ZË Downgrading
Products New User Price Upgrade Price
Microsoft Access 2002 $339 $109
Office XP Professional Edition $579 $329
Office XP Developer Edition $799 $549
43 SQL Server 2000 Z] Z¯ Á
ZÅ d̸]Z« ÄËZ¬»
Ê]ZËY (Desktop)ÉÌ»Á ÉZÅÄ»Z¿] ½YÂÀÄ] 2000 ¯Y ÊeZÔY ®¿Z] x
Ê°¿Z] SQL Z»Y .|ÀÀ¯Ê» Z¯ [Ây cZÔY dËZ]Z´» ¾Ë|Àq Z] Z¯ ÉY] Á |¿ÂÊ»
.dY cZÔY dËZ]Z´Ì³ |Ë|Àq Z] Z¯ ÉY]
-Éf» ºfÌ Y SQL Z»Y .{̳ʻ ÃÆ] ʸËZ§ ÉZ¼ » ºfÌ Y ¯Y ®¿Z] x
.|À¯Ê» Ã{Z¨fY (client-server) ¹{Zy
ÊËZÅÌv» { Á {Y{ SQL server Ä] d^¿ É{ZË ÉZÅdË{Á|v» ¯Y ®¿Z] x
Z¯ ½YÂe ÊÅZ³ |ÀÀ¯ Z¯ ÄÀÌÆ] Á ½Z»¼Å cÂÄ] |ÀÅYÂyÊ» ºÅZ] ]Z¯ ¾Ë|Àq į
.{Y|¿
:ÊeZÔY ®¿Z] Á{ ¾ËY ÉZÅ d̸]Z« Y É{Y| e
Feature Access 2000 SQL Server 2000
SMP support Not Supported Supported
Relational tablesˬ
Tables Relational tables
Temporary tables
AFTER triggersˬ
Triggers Not Supported
INSTEAD OF triggers
Procedures Not Supported Microsoft T-SQL statements
Scalar functionsˬ
User-defined Inline table-valued functionsˬ
Not Supported
functions Multistatement table-valued
functions
Views Not Supported Supported
Transaction logging Not Supported Supported
Recovery to last backupˬ
Recovery Recovery to last backup Recovery to the point of failureˬ
Recovery to a specific point in time
Integration with
Not Supported Supported
Windows NT security
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 44
ZÅ dË{Á|v» ÄËZ¬»
:dY Ë Y« Ä] ZÅ dË{Á|v» ¾ËY Y É{Y| e
Feature SQL Server 2000 Access 2000
2 GB plus linked
Database size 1ˬ048ˬ516 TB
tables size
Objects in a database 2ˬ147ˬ483ˬ647 32ˬ768
User name length 128 20
Password length 128 14
Table name length 128 64
Column name length 128 64
Index name length 128 64
Number of concurrent users limited by available memory 255
Columns per table 1024 255
Table size limited by available storage 1 GB
Number of indexes in a table 250 32
Number of columns in an index 16 10
Bytes per row 8060 2000
Number of tables in a query 256 32
Columns per SELECT statement 4096 255
Nested subqueries 32 50
Number of enforced relationships 253 32
65ˬ536 * Network packet
SQL statement size size approximately 64ˬ000
(4 KBˬ by default)
É̳ÄnÌf¿
SQL Y |ËZ] |ËZ] YZ¯ Á dÌÀ»Y Z] ,¶°ÌÅ É« ºfÌ ®Ë |ÌÅYÂyÊ» Z¼ ³Y
:YË ,|ÌÀ¯ Ã{Z¨fY
.|À¯Ê¼¿ Ê¿Z^Ìfa Ë Ê¸Ìy ÉZÅ Transaction Y ¯Y x
¾Ì¼e Y ROLL back cÓZu ZË Á ZÅ®¿Z] { Y cZÔY µZ¬f¿Y ¯Y x
.|À¯Ê¼¿
.Ìy ¯Y Z»Y , dY Ã| ÄqZb°Ë NT Á|ÀËÁ dÌÀ»Y z] Z] SQL server x
.½YÂeÊ» SQL { Z»Y ,d³Z] (point)Z¬¿ Ä] Zy Á] ¹Z´ÀÅ ½YÂeʼ¿ ¯Y {
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 45
ºnÀa ¶§
¥Y|ÅY -1-5
.|ÌÀ¯ Ã{Z¨fY ½M Y |Ì¿YÂf] |ËZ] SQL Server 2000 ÉY|¿YÃY Á \¿ ,[Zzf¿Y Y a
|ËÌ´] Y§ Y½M dY ¹Ó SQL Server 2000 Y Ã{Z¨fY ÉY] į Êz] ¾Ëf¼Æ»
.dY SQL Server \¸« º°u { į |Z] Ê» Enterprise Manager
,½M Y Ã{Z¨fY ÃÂv¿ Á Enterprise Manager ¶»Z¯ »M ¾¼ z] ¾ËY {
.ºÌÀ¯Ê» Á» Ì¿ Y SQL cYÂf{ ¾Ëf¼Æ»
:|ÌZ] Ã{¯ \¯ Y Ë ÉZÆeZÆ» |ËZ] Z¼ ¶§ ¾ËY ½ZËZa {
Enterprise Manager Z] Z¯ { ʧZ¯ ¸e x
½M { {Âm» ÉZÅ ÄÀ˳ Á ºÌÅZ¨» { x
...Á ZÆ¿M ºÌÅZ¨» { Á Stored Procedure ˬTable ˬDatabases ¦Ë e Á {ZnËY x
ZÆ¿M Y Ã{Z¨fY ÃÂv¿ Á SQL cYÂf{ ¾Ëf¼Æ» Z] ¶»Z¯ ÊËZÀM x
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 46
database¹Z¿
ÉÁ ] Á [Zzf¿Y Y (ZÅ)|¸Ì§ (É|̸¯ ÉZÅ|¸Ì§ ZË) |̸¯ |¸Ì§ ½{¯ z» ÉY]
.|ÌÀ¯ ®Ì¸¯ Toolbar ÉÁ ] "|̸¯" d»Ô
.|Z] Allow Nulls |¿YÂeʼ¿ |̸¯ |¸Ì§ :¯~e
.|ÌÀ¯ [Zzf¿Y Y index/keys Á Ã{¯ dY d¼ ®Ì¸¯ index ¦Ë e ÉY] :¯~e
SP ¹Z¿ -1
.|ËÌ´] ¿ { {Ây SP ÉY] ¹Z¿ ®Ë [PROCEDURE NAME] ÉZmÄ] Y|f]Y
:ºÌÀ¯Ê» Ã{Z¨fY ÂÀ» ¾Ë|] Ë ZfyZ Y µZj» ½YÂÀÄ]
µÁ|m ¹Z¿_cZ̸¼
SP ¹Z¿ |Z] insert cZ̸¼ ®Ë ¿ {» cZ̸¼ Á Sale µÁ|m ¹Z¿ ³Y µZj» ÂÄ]
Äf^·Y .{ `ËZe ±] ¥Áu Z] cZ̸¼ ¹Z¿ dY fÆ] .ºËY~³Ê» Sale_INSERT Y
:dY{ ºÌÅYÂy ÓZ] µZj» ÉY] .|ÀÀ¯ Ê» Ã{Z¨fY cZ̸¼ ¥u Ä Y ½ZfÁ{ Y Ê ]
Sale_INS
ZÅf»YZa ¦Ë e -2
f¿Ya ¶yY{ Y ZÆ¿M As É|̸¯ ļ¸¯ Y ¶^« SP É{ÁÁ ÉZÅf»YZa ¦Ë e ÉY]
¿ Á ĸZ§ | ] f»YZa ¹Z¿ b @ d»Ô Y|f]Y į ¶° ¾Ë|] .|ÌÀ¯ z»
.f»YZa
.|ÀÀ¯Ê» ÉÁÌa "@̤f» ¹Z¿" ZfyZ Y SP { ZÅ̤f» Ê»Z¼e :¯~e
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 50
Y name Á int ¿ Y Id ÉZÆ»Z¿ Z] f»YZa Á{ ÉYY{ SP ®Ë |ÌÀ¯ § µZj» ½YÂÀÄ]
@name varchar(20)ˬ @id int: ºËY{ ,|Z] Varchar(20) ¿
.ºÌÀ¯Ê» `ËZe Y ¿ {» cYÂf{ As Y | ] µZu
Y Y FirstName |¸Ì§ Á LastName |¸Ì§ µÁY ¥u ZÆq į |ÌËÂÀ] SP :1 µZj»
.{ Á A ¥u Z] LastName |¸Ì§ į Ê Ä] |À¯ [Zzf¿Y Employees µÁ|m
New stored ÄÀ˳ Á Ã{¯ dY d¼ ®Ì¸¯ Stored procedure ÉÁ] Y|f]Y
.|ÌÀ¯ `ËZe Y Ë Ây Á Ã{¯ [Zzf¿Y Y procedure
Create Stored Procedure Employees_BROWSE
As
Select substring(Lastnameˬ1ˬ4) as LastNmaeˬFirstName
From Employees
Where LastName Like ‘%A’
Exec SP ¹Z¿ :ºÌËÂÀ] dY ʧZ¯ Query Analyzer { ZÅ SP ÉYmY ÉY] µZu
Exec Employees_browse: µZj» ½YÂÀÄ]
:ºËÁM Ê» ºÅ Y ZÅf»YZa Y|¬» dY{ f»YZa ³Y
Exec Employees_Browse2 ‘01/01/1940’ ˬ ‘15/06/1955’
ZÅ̤f» ¦Ë e -3
:µZj» ½YÂÀÄ] .ºÌÀ¯ Ã{Z¨fY Declare É|̸¯ ļ¸¯ Y dËZ]Ê» ZÅ̤f» ¦Ë e ÉY]
Declare @myname varchar(50)
.|À¯Ê» ¦Ë e ZËÂa Éf¯YZ¯ ¿ Y @myname ̤f»
51 SQL Server 2000 ºÌÅZ¨» ¾Ëf¼Æ»
Zy |¯ ½|¿Y{³] -4
į Y ÉY|¬»Å Äq³ .ºÌÀ¯Ê» Ã{Z¨fY return @@Error Âf{ Y ÂÀ» ¾Ë|]
.ºÌ¿Y{³] return Âf{ Z] ºÌ¿YÂeÊ» ºÌÅYÂz]
ZÅ̤f» Ä] ÊÅ{Y|¬» -6
.Select Âf{ Z] É´Ë{ Á Set Âf{ Z] Ê°Ë |ÌÀ°] Y Z¯ ¾ËY |Ì¿YÂeÊ» Á Á{ Ä]
Ê cYÂf{ -7
.|Ë^] Z¯Ä] Y Ê cYÂf{ SQL { |Ì¿YÂeÊ» Z¼ ZÆ¿Z] ´Ë{ |À¿Z»
:dY Ë ¶° Ä] ½M ZfyZ
If then Âf{
If then
Begin
1Âf{
2Âf{
...
end
:µZj»
If @Sdate > @Edate set @newDate = @Sdate
{ ÂÀ» ¾ËY ÉY] .|ËZ] {Ây µÁY|m ÉÁ ] Ã| Äf¨³ ÉZÆeZ̸¼ dÆm SP É{ZË
:Ë ¶° |À¿Z» .|ÌËZ¼¿ ®Ì¸¯ {YËÁ |̸¯ ÉÁ ] Enterprise Manager
Create Stored ÄÀ˳ Á ®Ì¸¯ Database ÉÁ ] Select Wizard ÃnÀa { | ]
:Ë ¶° |À¿Z» .|ÌËZ¼¿ [Zzf¿Y Y Procedure Wizard
®Ì¸¯ Next |̸¯ ÉÁ] .|ËZ¼¿Ê» Ê˳ |»MÂy Z¼ Ä] É| ] ÃnÀa {
{ Z¯ ½M µÁY|m ÉÁ ] dY Y« į Y É Database ¹Z¿ É| ] ÃnÀa { .|ÌËZ¼¿
.|ÌËZ¼¿ ®Ì¸¯ Next ÉÁ ] Á |ÌËZ¼¿ [Zzf¿Y
[Zzf¿Y |ÌÅ{ ¹Zn¿Y |ÌÅYÂyÊ» į É¿ {» cZ̸¼ Á µÁY|m É| ] ÃnÀa {
Ã{Y{ ½Z¿ Z¼ Ä] Ã| ÄfyZ ºfÌ Âe į ÊËZÅ SP ¹Z¼e ¹Z¿ É| ] ÃnÀa { .|ÌÀ¯
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 54
|̸¯ Á [Zzf¿Y Y SP ½M |Ì¿YÂeÊ» ZÆ¿M Y ¹Y|¯Å |¯ ZË Á ¹Z¿ ËYËÁ ÉY] .| |ÅYÂy
:dY{ |ÌÅYÂy Ë ¶° Ä] ÉYÃnÀa Z¼ c¾ËY { .|ÌÅ{ Z§ Y Edit
(view) ZÅ|Ë{
.ºËY{aÊ» (view) ZÅ|Ë{ hv] Ä] µZu SQL »M \·Z» Ä»Y{Y {
Âm Á
a ®Ë Âe ½M ÉYÂfv» į dY ÉZn» µÁ|m ®Ë ¶Y { |Ë{
Ä] ½YÂeÊ» .|Z]Ê» ÊËZÆ¿Âf Á ÉYY{ ºÅ |Ë{ ,µÁ|m |À¿Z¼Å .{{³Ê» ¦Ë e
:{¯ ÃZY |Ë{ ÉZËY» ½YÂÀ Ä] Ë {Y»
.|¿Â ¯¼f» |¿Y{ ZÌ¿ į ÊËZÅÃ{Y{ ÉÁ ] Ze |ÀÅ{Ê» ÃZmY ½Y]Z¯ Ä] ZÅ|Ë{
Ì¿ Y ZÅÃ{Y{ dÌÀ»Y ZÅ|Ë{ .{¯ kZy |Ë{ Y ½YÂeÊ» Y ÉÁ Ì£ ÉZÅÃ{Y{ ¾ËY]ZÀ]
Ä] ZÅ|Ë{ .|¿Y{ {ÂmÁ |Ë{ { į |ÀÌ]Ê» Y ÊËZÅÃ{Y{ ¬§ ]Z¯ įYq |ÀÅ{Ê» ËY§Y
Z/Å|Ë{ .|ÀËZ¼¿ Ã|ÅZ» cÁZ¨f» ÉZ/ÆÁ Ä] Y ZÅÃ{Y{ Ze |ÀÅ{Ê» ÃZmY ½Y]Z¯
...Á |¿Á Z¯Ä] É{]Z¯ ÉZÅÄ»Z¿] ËZ Z] ZÅÃ{Y{ Ä·{Z^» ÉY] |À¿YÂeÊ»
|Ë{ {ZnËY
į ÊËZÅ|Ë{ ´Ë{ Á µÁY|m ¹Z¿ ¾Ì] { dËZ]Ê» ½M ¹Z¿ |ÌÀ¯Ê» {ZnËY Y É|Ë{ Êf«Á
{ZnËY ½Z°»Y Z¼ SQL Server 7.0 { .|Z] Zf°Ë ,ÄfyZ Y ZÆ¿M ¿ {» ]Z¯
.dY Ã| ħZY SQL 2000 { ½Z°»Y ¾ËY ¾°Ì· ,|ÌfY|¿ Y ZÅ|Ë{ ÉÁ ] yZ
.|ÌÀ¯ [Zzf¿Y Y Add Table... ÄÀ˳ Á Ã{¯ dY d¼ ®Ì¸¯ É| ] ÉÃnÀa { -3
ÉÁ ] ÊmZy ÉZÅ|̸¯ į {ÂÊ» Y«] Êe { ZÅZ^eY į |ÌZ] ÄfY{ ÄmÂe
d¯u Á ¿ {» |¸Ì§ [Zzf¿Y Z] |Ì¿YÂeÊ» Z¼ Äq³ .|Z] ÄfY{ {ÂmÁ µÁY|m
Y«] Y Z^eY µÁ|m Á{ ¾Ì]Z» |ËYÃ{Y{ Z§ Y `q d¼ ®Ì¸¯ įʷZu { ÃY»
.|ÌÀ¯
Run
¶¿Za
®^»
ÉZÅ|¯
SQL
|Ë{ lËZf¿
CREATE DATABASE
ÉZÅf»YZa ÉYY{ |¿YÂeÊ» Âf{ ¾ËY .{ZÊ» Y |Ë|m ÉZÅÃ{Y{ ÃZ´ËZa ®Ë Âf{ ¾ËY
z» Y ½M ½| ÄfyZ ¶v» Á ZÅÃ{Y{ ÃZ´ËZa ÊËY|f]Y ÃY|¿Y 0Ôj» į |Z] É{| f»
.|ÀÀ¯Ê»
.|ÌÀ¯ Ä mY» ÊÅ°¿Y ÉZ«M ¦Ì·Ze ZÅÃ{Y{ ÃZ´ËZa É{ZÌÀ] ºÌÅZ¨» [Zf¯ ºÅ{ZË Zf¨³ Ä] fÌ] Ä ·Z» ÉY] .1
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 58
CREATE TABLE
CREATE USER
DELETE
DELETE FROM table_name
WHERE condition
¾ËY Y Ã{Z¨fY ¹Z´ÀÅ Ä] .|À¯Ê» Za ÊeZÔY ®¿Z] ¶yY{ Y Y ZÅÃ{Y{ Âf{ ¾ËY
:į dY{ ÄmÂe |ËZ] Âf{
.|¿Z»Ê¼¿ ]Z¯ |ÌËPe fÀ» Á {ÂÊ» YmY {ÁÁ Y a ĸZ§Ô] Âf{ ¾ËY 0ÓÁY
.dÌ¿ µÁ|m ¥~u Ä] {Z« Á |À¯Ê» ¥~u Y ZÅ{¯ ZÆÀe DELETE Âf{ 0ZÌ¿Zi
.|ÌÀ¯ Ã{Z¨fY DROP TABLE Âf{ Y |ËZ] ZÆ·Á|m ¥~u ÉY]
DROP DATABASE
DROP TABLE
FROM
FROM <table>[ˬ<table>…]
.|À¯Ê» z» Y Ã| ªÌ¨¸e ZË Á Ã{Z¨fY {» ÉZÆ·Á|m Âf{ ¾ËY
GROUP BY
HAVING
HAVING <search_condition>
ÃÁ³ į {ÂÊ» hZ] Á {ÁÊ» Z¯Ä] GROUP BY Z] ÃY¼Å ZÆÀe É|̸¯ ļ¸¯ ¾ËY
.{{³ {Á|v» ,Ã| z» Âe Ê]Zzf¿Y
INSERT
Á{ ÉYY{ Á {ÁMÊ» ºÅY§ ÊeZÔY ®¿Z] Ä] Y ZÅÃ{Y{ ½{¯ ħZY ½Z°»Y Âf{ ¾ËY
:dY ʸ¯ ¶°
INSERT VALUES -˺
INSERT INTO table_name (col 1ˬ col 2ˬ…)
VALUES(value 1ˬ value 2ˬ…)
.|À¯Ê» ħZY µÁ|m ®Ë Ä] |Ë|m {¯ ®Ë cÂÄ] Y ZÅÃ{Y{ ,Âf{ ¾ËY
|̨» Âf{ ¾ËY Y Ã{Z¨fY ,|¿Y{ Z¯Á {Á|v» {¯ |Àq Y ZÆÀe į ÊeZ̸¼ {
.dY
INSERT … SELECT -˻
INSERT INTO table_name (col 1ˬ col 2ˬ…)
SELECT col 1ˬ col 2ˬ…
FROM table_name
WHERE search_condition
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 60
ORDER BY
ORDER BY <order_list>
\e» ,Ã|z» (ÉZÆ¿Âf ZË) ½Âf \u ] Y Êf³] Ë{Z¬» Âf{ ¾ËY
.|À¯Ê»
GRANT, REVOKE
SELECT
UPDATE
UPDATE table_name
SET column_name 1 = value 1 [ˬcolumn_name 2 = value 2 ˬ…]
WHERE search_condition
61 SQL Server 2000 ºÌÅZ¨» ¾Ëf¼Æ»
®¿Z] ¶yY{ { Y ZÅÃ{Y{ Á |Å{Ê» Ì̤e Y {Âm» ÉZÅ{¯ Ë{Z¬» Âf{ ¾ËY
.|À¯Ê» ÁÄ] ÊeZÔY
WHERE
WHERE <search_condition>
.|À¯Ê» {Á|v» Âe Y Êf³] ÉZÅ Âf{ ¾ËY
1
ÉZµZ»¿ -4-5
Z] Z¼ ¿ Ä] ,ºËÁZÌ] µÁ|m ®Ë { Á ºÅ ZÀ¯ { Y µÁ|m Á{ cZÔY |ÌÀ¯ §
ÊËZÅ|¸Ì§ Äq 0ÓÂY .{{³ {ZnËY dY ¾°¼» ÊeÓZ°Y Äq |Ë|m µÁ|m Ä] ÄmÂe
Ŀ´q Y µMÃ|ËY µÁ|m ®Ë Á |ÀÅ{ ¶Ì°e Y µÁ|m ®Ë ºÅ ZÀ¯ { dËZ]Ê»
.{¯ ÊuY ½YÂeÊ»
ʸ¯ ÂÄ] .{ÂÊ» Ã{Y{ xZa ÉZµZ»¿ ¹Âƨ» ʧ » Z] cÓY ¾ËY Ê»Z¼e
®¿Z] ÊuY ĸu» { į dY ÊËZÆÁ Á ZÆ°ÌÀ°e Y ÉYļn» ÉZµZ»¿
µZ»¿ µÁY|m ³Y .|¿Â ¦Ë e Âv¿ ¾ËfÆ] Ä] µÁY|m Ze ,{ÂÊ» µZ¼Y cZÔY
:| ºÌÅYÂy Á]Á Ã|¼ ¶°» Ä Z] |ÀZ^¿
ZÅÃ{Y{ Ê´¿Á§Y -1
Z^eY { ZÆÀe Y°e µMÃ|ËY cZÔY ®¿Z] ®Ë { .dY ZÅÃ{Y{ ÄËÁ Ê] Y°e ÊÀ » Ä]
¹Z¿ Ê´¿Á§Y ¾ËY Y Ì] Y°e .{̳ʻ c ,ÊmZy |̸¯ ªË Y Á µÁY|m ¾Ì]
.{{³Ê» Ê¿YÁY§ ÉZ§ ¾f§ |Å \m» ZÅÃ{Y{ Ê´¿Á§Y .{Y{
ʼ¿ Ê] -2
.dY ZÅÃ{Y{ Ì̤e { ʼ¿Ê] {ZnËY µZ»¿ Ì£ µÁY|m cÔ°» Y ´Ë{ Ê°Ë
ÊÆe Ë{Z¬» -3
ËZ¼¿ ¶]Z« ÊÆe Ë{Z¬» Y Ã{Z¨fY ½Á|] ÊeZÔY ÉZÅ|¸Ì§ Y Ê ] µÁY|m ¹Z£{Y Z]
.{ÁÊ» |Å Ä] Ã{ÂÆÌ] É{ZË ÉZ§ «YÁ { Á |ÀfÌ¿
.|ÌÀ¯ Ä mY» ÊÅ°¿Y ÉZ«M ¦Ì·Ze ZÅÃ{Y{ ÃZ´ËZa É{ZÌÀ] ºÌÅZ¨» [Zf¯ ºÅ{ZÆq Zf¨³ Ä] fÌ] Ä ·Z» ÉY] .1
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 62
´Ë{ É Y Z»Y |À¯Ê» É̳¸m ©Â§ cÔ°» Á] Y ÉZµZ»¿ Äq ³Y
Ã|ÌrÌa Á µÁY|m {|n» \̯e dÆm ¹Ó ½Z» ¶Ì·{ Ä] ,ÊÅ{xZa ½| |À¯ hZ]
.{{³Ê» ZÅÂm Á
a ½|
µZ»¿ ¶»Z¯ Â] µÁ|m ®Ë į |Å{ tÌme dY ¾°¼» sY ZÆ¿Z» Ê ]
.{ÂÊ» Äf¨³ Denormalization ZË ½{¯ kZy µZ»¿ Y Ã|Ë|a ¾ËY Ä] {¿
Ä] nÀ» į µZ»¿ ÉZ/Æ»/§ É ®Ë Y ÉÁÌa ÊÀ Ë ¶/¼ { ÉZµZ»¿
ÉZÀ^» ] ZÆ»§ ¾ËY .{Y{ {ÂmÁ µZ»¿ ¹§ 6 ʸ¯ ÂÄ] ,|¿ÂÊ» µÁY|m ÄËne
Á 4NF Á BCNF Á 3NF Á 2NF Á 1NF :Y |ÀeZ^ Á |¿YÃ| ¦Ë e Ê ]Ze Ê´f]YÁ
5NF Á 4NF Á º¯ ZÌ] BCNF ¹§ .|¿Y{ {]Z¯ ZÌ] µÁY ¹§ Ä ¶¼ { .5NF
.{ÂÊ» Ã{Z¨fY c|¿ Ä]
Ë ¶° cÂÄ] ,ºÌÅ{ ËZ¼¿ ÉYļn» Y{¼¿ c Ä] Y ZÆ»§ ¾Ì] Ä]Y ³Y
:{Â] |ÅYÂy
1NF
2NF
3NF
BCNF
4NF
5NF
cZ^ Ä] Á dY 1NF ļn» Ë 2NF Ä]Y Šį dY ¾ËY ´¿ZÌ] ¶° ¾ËY
.dÅ Ì¿ 1NF Z¼fu |Z] 2NF Ä]Y ®Ë ³Y ´Ë{
ÄfY{ Ê ]Ze Ê´f]YÁ |Ë|¿Z¯ ÉZÅ|̸¯ Ä] ¬§ ½M ÉZÆ¿Âf į dY BCNF Ê·Á|m
.|ÀZ]
:dY ÉÁ BCNF {» { Ë cZ°¿ Ä] ÄmÂe
ÉZÌ¿ BCNF µZ»¿ ¹§ Ä] µÁ|m ®Ë ¶Ë|^e ÉY] ´Ë{ µZ»¿ ÉZÆ»§ ¥Ôy ] -1
¦Ë e Y Ã{Z¨fY Z] ÊÀ Ë ,|ÀËM{ 3NF ZË Á 2NF ,1NF ÉZÆ»§ Ä] Y|f]Y µÁ|m dÌ¿
¦Ë e ¾Ëe»Zm BCNF ¾ËY]ZÀ] ,{¯ µZ»¿ ½YÂeÊ» ĸu» ®Ë { Y µÁY|m BCNF
.|Å{Ê» ÄWYY ¶¬f» Â] Y Ê ]Ze Ê´f]YÁ ÉZÀ^» ] ÉZµZ»¿
µÁY|m ¶Ë|^e Y dY fÆ] Á dÌ¿ ¹Ó BCNF t Ze ÉZµZ»¿ É{Y» { -2
.{¯ ÉY{{Ây BCNF Ä] 3NF
½M ʸ¯  Ä] |ÀZ^¿ BCNF dY ¾°¼» c|¿ Ä] |ÀZ] 3NF į Ê·ÁY|m Ó¼ »
BCNF ¹§ { dY ¾°¼» |ÀZ] ÄfY{ Y Ë Ä Å Ä¯ 3NF µÁY|m Y Äf{
:|ÀZ^¿
.|Z] |Ë|¿Z¯ |̸¯ Á{ ¶«Y|u ÉYY{ µÁ|m -1
.|ÀZ] Ê^̯e |Ë|¿Z¯ ÉZÅ|̸¯ ¾ËY -2
.|ÀZ] ÄfY{ f» d¨ Ê^̯e ÉZÅ|̸¯ ¾ËY -3
³Y Á {Y{ ÉZµZ»¿ { ʼƻ ZÌ] ¬¿ ,ÄÀÌÆ] (Zf]) ÊÂa Ê´f]YÁ ļn»
µZ»¿ ¶»Z¯ Â] µÁY|m į {Y{ ½Z°»Y {¿ Ã{Z¨fY ÉZµZ»¿ ÉY] ÄÀÌÆ] Zf] Y
.|ÀZ] Ê´¿Á§Y ÉYY{ Á |¿Â¿
{ BCNF ¹§ Ä] Ê·ÁY|m į |f§Y Ê» ©Z¨eY ÊÅZ³ :(4NF) ¹ZÆq µZ»¿ ¹§ -5
ÉY|¬» |Àq Ê´f]YÁ Ê´¿Á§Y ¾ËY ¶¸ Y Ê°Ë .|¿Y{ Ê´¿Á§Y ºÅ ÂÀÅ Z»Y |¿YÃ|»M
(5NF) ºnÀa µZ»¿ ¹§ { į dY É|¿ÂÌa Ê´f]YÁ ,´Ë{ d¸) .dY (MVD)
.({ÂÊ» Ê]
.dY ZÅd¨ Y ¶¬f» ļn» Á{ ¾Ì] Ê´f]YÁ Ê¿ ÉY|¬» |Àq Ê´f]YÁ
:į {ÂÊ» ¦Ë e c ¾ËY Ä] 4NF ¹ZÆq µZ»¿ ¹§
ÊÆË|] Ì£ ÉY|¬»|Àq Ê´f]YÁ pÌÅ Á |Z] BCNF ¹§ Ä] į dY 4NF Ê·Á|m
Ê´f]YÁ cZ¨ 4NF ¹§ Ä] BCNF µÁ|m ®Ë ¶Ë|^e ÉY] .|Z] ÄfY|¿ (ÊWmÌ£)
65 SQL Server 2000 ºÌÅZ¨» ¾Ëf¼Æ»
º ¶§
¥Y|ÅY -1-6
ZÅÃ{Y{ ÃZ´ËZa ®Ë ÉZÅÃ{Y{ Z] ½YÂeÊ» į Y ÊËZÅZ¯ Ê»Z¼e 0Z^ˬe Äf~³ ÉZƸ§ {
Ê]ZËZ] ÉY] SELECT Âf{ Y Ã{Z¨fY µZj» ÂÄ] ,|Ìf§³ Y§ {Y{ ¹Zn¿Y
cYÂf{ Y Ã{Z¨fY ¾ÌÀr¼Å Á ¿ {» ËY ÉZÀ^» ] µÁ|m |Àq ZË ®Ë ÉZÅÃ{Y{
Y ZÅÃ{Y{ ÃZ´ËZa ®Ë ÉZÅÃ{Y{ ½{Y{ Ì̤e ÉY] DELETE Á UPDATE ,INSERT
SQL Á ZÅÃ{Y{ ÃZ´ËZa ÊeZ/»|¬» ºÌÅZ/¨» Z] Z¼ Zu µZu { \Ìee ¾ËY Ä] ,|Ìfy»M
|ËZ] |ÌÀ¯ ÊuY |À¼e|« Á ÉYħu Ã{Y{ ÃZ´ËZa ®Ë |ÌÅYÂyÊ» ³Y Z»Y ,|ÌfÅ ZÀM
.|Ë»ZÌ] Ì¿ Y ¶§ ¾ËY huZ^»
Z] ¶^« Y į Ê¿ZËÂn¿Y{ Á ½ZË¿ĻZ¿] ÉY] Êfu dY ¾°¼» ¶§ ¾ËY \·Z»
¾ÌÀr¼Å Á Zů Á ZƯ|ÀËY {» { ¶§ ¾ËY { .|Z] |Ë|m |¿YÃ{Â] ZÀM SQL
.dyY{a ºÌÅYÂy ZÆ¿M É̳Z¯Ä] Á Ã{Z¨fY ÃÂv¿ Á ZÅ´Ëe Á ZÆÀ¯Ye ¹Âƨ»
:|ÌZ] Ã{¯ \¯ Y Ë ÉZÆeZÆ» |ËZ] Z¼ ¶§ ¾ËY ½ZËZa {
CURSOR Á TRIGGER ˬTRANSACTION ˬ INDEX ¹Âƨ» { x
ZÆ¿M É̳Z¯Ä] Á ÊuY x
¯|ÀËY Á |Ë{ ÉZÆeÁZ¨e x
À¯Ye ¤· ZË Á dÌ^je ÃÂv¿ x
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 68
|ÀqÅ) |À¯ {ZnËY ZÅÃ{Y{ ÃZ´ËZa { ÉÌ̤e į ʸ¼ ÊÀ Ë Ã{Z ½ZÌ] Ä] À¯Ye
Ä»Z¿] ®Ë cÂÄ] 0Z ^ ¶¼ ¾ËY ,(|Z] ½|¿YÂy ¶¼ ¬§ |¿YÂeÊ» Zy d·Zu {
.{¿ YmY 0ÔY ZË Á { YmY Ê»Z¼e Ä] |ËZ] ZË Ä¯ dY Ä»Z¿] ®Ë Y Êz] ZË
.{Y{ ÉË~aZ¿ÄËne dÌZy À¯Ye d¨³ ½YÂeÊ» ¾ËY]ZÀ]
ZÅ{Y|ËÁ
Ê¿ÁÌ] Ê¿Á{
ÉZÅ{¯ ¾Ì] { ½| Zn]Zm ½Z°»Y Ì¿ ZÅÃ{Y{ ÃZ´ËZa ¯ ,|ÌÀ¯ Ã|ÅZ» Y Ây
Y ÉYÄf{ |Ì¿YÂeÊ» ZÅÃ{Y{ ÃZ´ËZa ÉZů Y Ã{Z¨fY Z] .{ÁMÊ» ºÅY§ Y µÁ|m
Y ZÅÃ{Y{ Å ,|ÌÀ¯ d¯u ZÅ{¯ Y ÉYļn» { ,|ÌÀ¯ [Zzf¿Y Y ZÅÃ{Y{
.|ÌÅ{ ¹Zn¿Y ½M ÉZÅÃ{Y{ ÉÁ ] Y ¿ {» cZ̸¼ Á |ÌÅ{ Y« Ê] {» 0Ô¬f»
É| ] ÉZÅÃ{Z¨fY ÉY] a ®Ë lËZf¿ ½{¯ ÃÌy} ,Zů ´Ë{ lËY {]Z¯
³Y .|¿ÂÊ» ÄfyZ select Âf{ ®Ë lËZf¿ ÉÁ Y ¯ ÉZÅ{¯ ļn» .dY
ÉZmÄ] dY fÆ] ,|ËY{ ZÌ¿ ZÅ{¯ Y ļn» ®Ë Ä] 0Y°» {Ây µYÁ ZË Ä»Z¿] {
ÉZÅ{¯ ÉÁZu ɯ Z]®Ë ,|ÌÅ{ Y« a {» Y ZÅÃ{Y{ ÃZ´ËZa Z] Šį½M
] ÃÁÔ \Ìee ¾ËY Ä] .|ÌÀ¯ Ã{Z¨fY ¯ ¾ËY Y É| ] cZ §{ { Á |ËZ] Y Â]»
{ f¸£ Á d¯u ½Z°»Y -| |ÅYÂy YmY ÉfÌ] d Z] Z¼ µYÁ ZË Ä»Z¿] Ä°ÀËY
.dY{ |ÌÅYÂy Ì¿ Y ZÅ{¯ ļn»
:|ÌÅ{ ¹Zn¿Y Y Ë ¶uY» |ËZ] ,Zů ¾f] Á É̳Z¯Ä] ,{ZnËY ÉY]
:|ÌÀ¯ Ã{Z¨fY Ë Z´¿ ÃÂv¿ Y |ËZ] ¯ ®Ë ¾fyZ ÉY] .|ËZ] Y ¯ -1
CREATE cursor_name cursor
For select_statement
Ã{Z Âf{ .|ÌÀ¯ Ã{Z¨fY {Ây µYÁ ZË Ä»Z¿] { ½M Y |Ì¿YÂf] Ze |ÌÀ¯ Z] Y ¯ -2
:|À¯Ê» Z] É| ] ÉZÅ{]Z¯ ÉY] Y ¯ Ë
Open cursor_name
f¸£ ÉY] .|ÌÀ¯ ÊYÁ {¯ ¾ËyM Ä] ½|Ì Ze Ê°Ë Ê°Ë Y ¯ ÉZÅ{¯ -3
: |ÌÀ¯ Ã{Z¨fY Ë ¶° Ä] Fetch Âf{ Y |ËZ] ¯ ļn» { d¯u Á
Fetch cursor_name [into fetch_target_list]
Z´¿ ÃÂv¿ .{Á] ¾Ì] Y 0Ô»Z¯ ¯ Ze |ÌÀ¯ ZÅ Y ¯ Ä] Äf§ZË ZfyY ÉZ§ -5
:|Z]Ê» Ë ¶° Ä] Âf{ ¾ËY
Deallocate cursor cursor_name
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 74
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 75
ºf¨Å ¶§
¥Y|ÅY -1-7
Á cYÂf{ ¾Ëf¼Æ» Á |Ë| ZÀM SQL Server 2000 Z] Z¯ ÉÃÂv¿ Z] į µZu
ÉZÅÄ»Z¿] ¶yY{ { ½M Y |Ì¿YÂf] |ËZ] ,|Ìf§³ Y§ Ì¿ Y SQL { Äf§Ìa huZ^»
ZËÂa ÉZÆfËZ [Á ZË ZÅÄ»Z¿] Á |ÌÀ¯ Ã{Z¨fY {Ây [Á cZv¨ ZË Á É{]Z¯
.|ÌÀ¯ |Ì·Âe (Dynamic)
.{¯ Y«] Z^eY ½M Z] ½YÂf] |ËZ] ,Ã{Y{ ÃZ´ËZa ®Ë ÉZÆÌËZ¿YÂe Y Ã{Z¨fY ÉY]
ÉY] ¾ËY]ZÀ] .{̳ʻ ¹Zn¿Y ADO ¹ZÀ] ÊYÁ ªË Y ÊeZÔY ÉZÅ®¿Z] Z] Z^eY
ºÅ Á SQL ºÅ |ËZ] [Á cZv¨ ZË ZÅÄ»Z¿] ¶yY{ Y ÊeZÔY ÉZÆ°¿Z] Z] Z^eY
.{ÂÊ» Ã{Z¨fY f» Â Ä] ZÆ¿M ÉÁ{ Å Y YË |ËÌ´] Y§ Y ADO
ADO Ã|¼ VÌ Á{ Á ºËY{aÊ» ½M {]Z¯ Á ADO ʧ » Ä] z] ¾ËY {
|ÀZ]Ê» É{ZË ZÌ] {]Z¯ Á d̼ÅY ÉYY{ į Y RecordSet Á Connection ÊÀ Ë
.ºÌÀ¯Ê» Ê] ZÆ¿M Ä] Â]» ÉZÅ|f» ÃY¼Å Ä]
:|ÌZ] Ã{¯ \¯ Y Ë ÉZÆeZÆ» |ËZ] Z¼ ¶§ ¾ËY ½ZËZa {
½M ÉZÅ|f» Á ZÌY , ADO ¹Âƨ» { x
ADO ĸÌÂ] ÊeZÔY ÉZÅ ®¿Z] Z] Z^eY ÉY«] x
ODBC Á DSN_LESS Z^eY ÃÂv¿ x
ZÅÄ»Z¿] ¶yY{ { ½M É̳Z¯Ä] Á DataBase Z] µZeY ÉY«] ʸ¯ |¿Á { x
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 76
DSN_LESS Z^eY -1
Á Connection VÌ ®Ë ¾fyZ Y | ] į dY c ¾ËY Ä] Z^eY ÃÂv¿ ¾ËY
Á ºÌÀ¯Ê» z» Y ÊeZÔY ®¿Z] ¶ËZ§ Ì» ,ÊeZÔY ®¿Z] ÂËY{ ½{¯ z»
µZj» { .ºÌÀ¯Ê» ʧ » [Á Äv¨ ZË Ä»Z¿] ¶yY{ Y Y ÊeZÔY ®¿Z] c ¾Ë|]
:ºËYÃ{¯ Z] C ÂËY{ Y Y ÊeZÔY ®¿Z] ®Ë ,Ë
ADODB.Connection
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open" c:/webdata/northwind.mdb"
ODBC Z^eY -2
.dY Z] ÉZÅÃ{Y{ ÃZ´ËZa µZeY ZË (Open DataBase Connectivity) ¦¨z» ODBC
ÃZ´ËZa Ä] ÂËY{ ®Ë ªË Y |À¿YÂeÊ» Á|ÀËÁ ÉZÅÄ»Z¿] ,ÉÁZÀ§ ¾ËY Y Ã{Z¨fY Z]
{ ´aZq ÉZÅÂËY{ ¹Âƨ» Ä] É{ZË dÅZ^ ODBC ¹Âƨ» .|À]ZË d{ ZÅÃ{Y{
.{Y{ Á|ÀËÁ
77 Database Z] Z^eY ÉY«]
Á ºËY|¿ ODBC { System DSN Ä] ZÌ¿ Z^eY ÉY«] ÉY] µÁY Á {
Á ¾ËY Y~· .{ÂÊ» ¹Zn¿Y [Á Äv¨ ZË Ä»Z¿] ¶yY{ { Z^eY Ä] Â]» µZ¼Y ¹Z¼e
½Z]Ì» Ä] Z¼ Ä°ÀËY ZË Á |Z] ÊmZy Á ®Ë Z¼ ½Z]Ì» į dY |̨» Ê»Z´ÀÅ
{Ây dËZ ½Z]Ì» Á Ä] ³Y Z»Y -|ÌZ] ÄfY|¿ Ê°Ȩ̈ Êf{ {Ây dËZ
.|ÌÀ¯ Ã{Z¨fY ¹Á{ Á Y |Ì¿YÂeÊ» |ËY{ Êf{
{ZÆÀÌa Ì¿ Z» Á |ÌÀ¯ Ã{Z¨fY |Ì¿YÂeÊ» ºÅ µÁY Á Y d·Zu ¾ËY { Äf^·Y
{ YË .|ÌÀ¯ Ã{Z¨fY DSN_LESS ÊÀ Ë µÁY Á Y Z¼ d·Zu Å { į ºÌÀ¯Ê»
.|»M |ÅYÂz¿ Ìa ʸ°» Á |Å{Ê» [YÂm ZÅdÌ Á Á cÓZu ¹Z¼e
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 78
ˬCommand , Connection :¹Z¿ Z] ÊZY VÌ lÀa ÉYY{ 2/5 Äz¿ ADO
ʸ^« Äz¿ { Stream Á Record VÌ Á{ .dY Stream Á Record ,RecordSet
.|ÀfY|¿ {ÂmÁ ADO
ÉZÅ|f» Á RecordSet Á Connection ÊÀ Ë ADO Ã|¼ VÌ Á{ Ê] Ä] µZu
:ºËY{aÊ» ZÆ¿M Ä] Â]»
Connection VÌ
Á {ZnËY Z] dËZ]Ê» ÊeZÔY ®¿Z] Y ZÅÃ{Y{ Ê]ZËZ] Á ÃÌy} Ŀ³ Å Y ¶^«
ÊeZÔY ®¿Z] Z] Z^eY ÉY«] dÆm ¹Ó ÄÀÌ» ,Connection ®Ë ÄÌ·ÁY ÊÅ{Y|¬»
.{ÁM {ÂmÁÄ] Y
Á {ZnËY ÊeZÔY ®¿Z] Z] Z^eY ®Ë Connection LÊ Y Ã{Z¨fY Z] ADO {
½M {ÂmÁ Ä] į Ê¿Z» { Á ÊeZÔY ®¿Z] Z] Ä]Y { ÃYÂz·{ cZ̸¼ ¹Zn¿Y Y a
.{¯ ¥~u Y ½M ½YÂeÊ» ,|Z^¿ ZÌ¿ ´Ë{
¹Z¿ Z] |uYÁ ÉYÃÁa ,ÊeZÔY ®¿Z] Ä] Z^eY ®Ë ½{¯ Open
ADO LZÌY Ê»Z¼e ¶»Z {Ây į Ã{Â] Objects Database ADODB(ActiveX Data)
Server.CreateObject |f» Y LZÌY ËZ Ì¿ Connection ®Ë {ZnËY ÉY] .dY
.{{³Ê» Ã{Z¨fY
Dim Conn
Set Conn = Server.CreateObject(“ADODB.Connection”)
ConnectionString
VÌ Ä] Â]» ConnectionString d¨ dËZ]Ê» ,Mode ¾ÌÌ e Y a
Ä/¯ Ã{Â/] z] ¾Ë|Àq ÉYY{ ©Â/§ d¨ .{Â/¼¿ \ZÀ» Ê/Å{ Y|¬» Y Connection
:|¿{³ z» dËZ]Ê»
Ã{Z¨fY |« į ÊeZÔY ®¿Z] ¹Z¿ ,ÊeZÔY ®¿Z] Ã|ÀÅ{ËÁ ¹Z¿ , Provider ¹Z¿
Â^ » Á (UID) ÊeZÔY ®¿Z] Ä] µZeY dÆm ¹Ó É]Z¯ ÄZÀ ,|ËY{ Y ½M Y
Y|m ºÅ Y ";" d»Ô Âe ©Â§ ÉZÅz] Y ®ËÅ .(PWD) Zy]Z¯ ÉY]
.|¿ÂÊ»
ÉY] Ã{Y{ ÃZ´ËZa ®Ë Provider |ËZ |ËYÃ{°¿ Z¯ Ã{Y{ ÃZ´ËZa Z] µZuÄ] Ze ³Y
¶f» Ã{Y{ ÃZ´ËZa Ä] Ze {¯ Ê |ËZ] į Y ÊÅY ÄÔy ÂÄ] .|/Z] ¹Âƨ»Z¿ Z¼
®Ë ĸÌÁÄ] ,{¼¿ YmY Y cYÂf{ Á Ã{¯ ÉZ°f{ Y ZÅÃ{Y{ Á Ã{¯ Z] Y½M ,Ã|
.{ÂÊ» z» (provider) cZÔY Ã|ÀÀ¯ÄÌÆe
:|ÌWZ»§ ÄmÂe Ë µZj» Ä]
Dim con
Set con = Server.CreateObject("ADODB.Connection")
path="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security
Info=False;Initial Catalog=rayan ;Data Source=NARMAFZAR"
con.Open Path
®¿Z] ¹Z¿ Á ÊeZÔY ®¿Z] Ã|ÀÅ{ËÁ ¹Z¿ , Provider ¹Z¿ ¶»Z ConnectionString
Y ÊÅZ³M |À»ZÌ¿ ADODB.Connection VÌ Ä¯ ºÌZ] ÄfY{ ÄmÂe .dY ÊeZÔY
.dY ÊeZÔY ®¿Z] Ê «YÁ Ì»
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 80
ÉÁ ] ¹Ó cYÌ̤e Ê»Z¼e , Connection ½{¼¿ Z] Y ¶^« į ºÌÀ°¿ »Y§
®¿Z] Z] Z^eY {ZnËY Y a ºÌÅYÂz] įÊe { .{{³ µZ¼Y ÄÂ]» ÉZÅd¨
Z] Y {Ây Z^eY Y|f]Y { dËZ]Ê» ,ºÌÅ{ Ì̤e Y ^e» d¨ |Àq ZË ®Ë ÊeZÔY
ªË Y Y ¹Ó cYÌ̤e Ä»Y{Y { Á ({{³ Äf] , Connection) « ÊeZÔY ®¿Z]
.{¼¿ Z] Y Connection 0Y{|n» Á µZ¼Y ÄÂ]» cZ¨
Connection.Open |f»
Connection VÌ Ä] Â]» Open |f» Y Connection ®Ë ½{¼¿ Z] ÂÀ» Ä]
ÉZ¯ Z^eY ®Ë ,{{³ YmY Zy ½Á|] ©Â§ |f» įÊe { .{{³Ê» Ã{Z¨fY
.dY Ã| {ZnËY ÊeZÔY ®¿Z] Z] (ÊeZ̸¼)
Connection.Execute |f»
.{Y{ {ÂmÁ Ã|¼ Á Ä ADO Âe ÊeZÔY ®¿Z] ®Ë Y ZÅÃ{Y{ Ê]ZËZ] ÉY]
¾ËeÃ{Z .dY{ |ÀÅYÂy ÊeZÔY ®¿Z] Z] Z^eY Ä] ZÌ¿ µÁY ĸu» { ZÆ¿M Ê»Z¼e
Ä ÉYY{ ©Â§ |f» .dY Connection VÌ Ä] Â]» Execute |f» Y Ã{Z¨fY d·Zu
:dY f»YZa
į Stored Procedure ®Ë ¹Z¿ ZË View ˬ Table ˬ Query ZË , SQL Âf{ ®Ë •
.| |ÅYÂy z» CommandText f»YZa Âe
Z] į {Â] |ÅYÂy ÊWZÅ{¯ {Y| e ¶»Z į , RecordsAffected ¹Z¿ Z] ̤f» ®Ë •
.{ÂÊ» z» Execute |f» Âe Ã| YmY Query Ä] ÄmÂe
d¨³ |ÅYÂy ÊeZÔY ®¿Z] Ä] į CommandTypeEnum ¹Z¿ Z] ÉZÌfyY d]Zi ®Ë •
Y Recordset VÌ ®Ë Ä°ÀËY Á |ÌWZ¼¿ YmY |ÌÅYÂyÊ» Y Query ZË Á cZ^ ¿ Äq
.Ìy ZË |¿Y{³]
{ Ã|Ã|¿Y{³] ÉZÅ{¯ ,(¾°¼» Á Å Ä]) Execute |f» ÉYmY Y a
Ã{Z¨fY SELECT Âf{ Y įÊe { .| |ÀÅYÂy Ã|¿Y{³] RecordSet VÌ
Y įʿZ» Z»Y .d§³ |ÀÅYÂy Y« RecordSet Ê { Ã|Ã|¿Y{³] ÉZÅ{¯ {Â
.| |ÅYÂz¿ Ã|¿Y{³Z] É{¯ {{³ Ã{Z¨fY UPDATE ZË Á INSERT cYÂf{
81 Database Z] Z^eY ÉY«]
RecordSet VÌ
¾ËY .{{³Ê» Ã{Z¨fY Êf§ZË{ µÁ|m ZË ZÅ{¯ ÉY|Æ´¿ dÆm RecordSet VÌ Y
d¬Ì¬u { .dY ÊËZÅ ½Âf Á ZÅ ÉYY{ ÊeZÔY ®¿Z] µÁ|m ®Ë Ì¿ VÌ
®Ë Ê°Ȩ̈ cÂÄ] Ê·Á {Y{ |ÅYÂy µÁ|m ®Ë Y ÉZn» ËÂe ®Ë ©Â§ VÌ
¾°¼» {̳ʻ Y« VÌ ¾ËY ÉZŽÂf { į É¿ {» Ë{Z¬» į Yq .dÌ¿ µÁ|m
.|ÀZ] ´Ë{ µÁ|m ¾Ë|Àq (Join) \̯e ¶Zu dY
RecordSet.Open |f»
Ä] ɳÃZY) Cursor ¿ Å Ä] RecordSet VÌ Y Ã{Z¨fY ¹Z´ÀŠįÊe {
į Cursor ®Ë Ä¿ 0Z§) |ÌZ] ÄfY{ ZÌ¿ (µÁ|m { {Âm» ÉZÅ Y ®ËÅ
|f» Y Ã{Z¨fY ÉZm Ä] dËZ]Ê» (|Z] Read-Only ZË Á Forward-Only cÂÄ]
.|ÌÀ¯ Z] Y ÊeZÔY ®¿Z] 0Z¼Ì¬f» , Connection Ê Ä] Â]» Execute
:|À¯Ê» ~yY Y f»YZa ¾Ë|Àq į dY Open ¹Z¿ Z] É|f» ÉYY{ Ì¿ RecordSet VÌ
Move |f»
µÂ { ½YÂeÊ» ,Move |f»Y Ã{Z¨fY Z] ,RecordSet VÌ ®Ë ½{¼¿ Z] Y a
VÌ .{¯ d¯u cursor ¿ Ä] ÄmÂe Z] RecordSet VÌ { {Âm» ÉZÅ
{Âm» ÉZÅ{¯ {Y| e į Ã{Â] RecordCount ¹Z¿ Z] d¨ ®Ë ÉYY{ RecordSet
.|À¯Ê» z» Y RecordSet VÌ {
ZÅÃ{Y{ ÃZ´ËZa ÃZ´ËZ»M 82
Y|f]Y { Ê·Zy ®Ë Z] dY µÁ|m ®Ë Ì¿ RecordSet VÌ Ä¯ |ÌÀ¯ Âe
ÃZY {¯ ®Ë Ä] Äv· Å { į ɳÃZY Á ½M ÉZÆf¿Y { Ê·Zy ®Ë Á
{¯ |ÅYÂy Ì̤e ©Â§ ³ÃZY dÌ «Â» ,Move |f» Y Ã{Z¨fY Z] «YÁ { .|À¯Ê»
Á EOF ¹Z¿ Z] ´Ë{ |f» Á{ ÉYY{ RecordSet VÌ .({¯ |ÅYÂy d¯u ³ÃZY)
|ÀÅYÂy z» Y ZÅ{¯ ÉZÆf¿Y ZË Á Y|f]Y { ³ÃZY Âu ½Z» į dY BOF
.{¯
:|ÀfÅ ( d{Z¿ / d{ ) Boolean ¿ Y |f» Á{ ¾ËY
¯Y ¶ËZ§ ¾f§³ Y« ¶v»
{M Data Source Y | ] ÓZ] µZeY Äf {
Z¼ µZeY Äf |ÌÀ¯ Ã{Z¨fY SQL Server Y |ÌÅYÂyÊ» ³Y .|ÌÀ¯ z» Y {Ây
:{Â] |ÅYÂy Ë ¾f» Ä] ÄÌ^ ÉÌq
string connectionString="server=127.0.0.1;
database=MY_DATABASE;UID=MY_USERNAME;PWD
=MY_PASSWORD"
.|ÌÀ¯Ê» {YÁ Y ¿ {» Á IP ZË Á ¹Z¿ Server Y | ] ÓZ] µZeY Äf {
ÉY] Y Â^ ļ¸¯ Á É]Z¯ ¹Z¿  ¾Ì¼Å Á Data base ¹Z¿ MY_DATABASE Ä]
.|ÌÀ¯ z» Á Ä] Êf{
¾ËeÃ{Z Z» Ê·Á |¿Y{ ºÅ É´Ë{ ÉZÅf»YZa µZeY ÉZÅ Äf į |ÌÀ¯ ÄmÂe
ÉZÅÄf ¾f¿ ÃÂv¿ {» { fÌ] cZÔY \¯ ÉY] .ºË{¯ Ê] Y µ|»
http://www.connectionstrings.com :|ÌÀ¯ Ä mY» Ë dËZ Ä] µZeY
Connection VÌ Open |f» ®¼¯ Ä] Y Z¯ ¾ËY :Connection VÌ ½{¯ Z] -4
:ºÌÅ{Ê» ¹Zn¿Y Ã| ¦Ë e
myConnection.Open ();
dÂÌa
¾ËY { ,Ã| Äf¨³ ºÌÅZ¨» { Á É̳{ZË »Y { ®¼¯ ÂÀ» Ä] Á [Zf¯ ¾ËY ½ZËZa {
{ZnËY ÉY] ADO Á ASP Z^eY ÃÂv¿ Y É{]Z¯ ÉZŵZj» Êy] Ê] Ä] d¼«
¹Zn¿Y Ê´¿Â´q Á dyY{a ºÌÅYÂy ÊeZÔY ÉZÅ®¿Z] ] Ê°f» ÉZÅdËZ [Á
É{]Z¯ ÉZÆ·Zj» \·Z« { Y ZÅ{¯ ÉZ ¹Z´ÀÆ] Á ¥~u ,k{ ,Ê]ZËZ] cZ̸¼
.{¯ ºÌÅYÂy ½ZÌ]
SQL Server É̳Z°] ¹Z´ÀÅ { lËY cÔ°» Á ZÅZy Y¿Y Z] ¾ÌÀr¼Å
Á |ËÂÊ» ZÀM ,|¿ÂÊ» ÄmY» ½M Z] –ÉYħu Ze É|f^» Y– ½Y]Z¯ j¯Y į ,2000
.dy»M |ÌÅYÂy Y ZÆ¿M § Á É̳¸m ÉZÆÁ
|¿ÂÊ» Zy ¹Z¤Ìa d§ZË{ Ä] nÀ» cZÅZ^fY Y Êy] į |ÌZ] ÄfY{ {ZË Ä]
ÉZÅZy Á] ÄnÌf¿ { Á cYÂf{ ªÀ» { ¬¿ hZ] dY ¾°¼» ´Ë{ Êy] Ê·Á
¾ËY j¯Y Y |Ì¿YÂeÊ» cZÌWm Ä] ªÌ¼ ÄmÂe Z] .|¿{³ É| ] cÔ°» Á |Ë|m
.{Â] |ÌÅYÂz¿ ½Â» ÊËZÅZy ¾ÌÀq Y ÃZ³pÌÅ Äq ³Y ,|ÌÀ¯ [ZÀfmY cÔ°»
<HTML>
<HEAD><TITLE>Student Records</TITLE></HEAD>
<BODY>
<%
Set Contents_DB=Server.CreateObject("ADODB.Connection")
path="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security
Info=False;Initial Catalog=Students;Data Source=computername"
Contents_DB.Open path
SQLQuery="SELECT * FROM Students"
Set Result=Contents_DB.Execute (SQLQuery)
If Result.EOF And Result.BOF Then
Response.Write "There are 0 records."
Else
Result.MoveFirst
While Not Result.EOF
Response.Write Result.Fields ("FirstName")
Response.Write Result.Fields ("LastName")
Response.Write Result.Fields ("Email")
Response.Write "<HR>"
Result.MoveNext
Wend
End If
Result.Close
Contents_DB.Close
%>
</BODY>
</HTML>
_Zq ÊmÁy { Ä] Ân¿Y{ Å Email Á ʳ{Y¿Zy ¹Z¿ Á ¹Z¿ ,©Â§ µZj» {
.| |ÅYÂy
87 dÂÌa
<HTML>
<HEAD>
<TITLE>Student Records</TITLE>
</HEAD>
<BODY>
<%
Set DB=Server.CreateObject("ADODB.Connection")
path="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security
Info=False;Initial Catalog=Students;Data Source=computername"
DB.Open path
Set Records=Server.CreateObject("ADODB.Recordset")
ÉZÅ{¯ Ê»Z¼e ,{{³ ¥~u WHERE cZ^ , DELETE ÉYmY ½Z» { ³Y 0ZÌ¿Zi
.|Ë{³ |ÀÅYÂy ¥~u µÁ|m { {Âm»
[Zzf¿Y Y I Accept ÄÀ˳ License Agreement ÃnÀa {.|ÌÀ¯ ®Ì¸¯ Y Next ÄÀ˳
.|ÌÀ¯ ®Ì¸¯ Y Next Y{|n» Á |ÌÀ¯
|Å{Ê» ½Z¿ Y |¬» ÉZƸËZ§ ½Z°» į {ÂÊ» ÅZ Ë ¶° ª]Z» ÉY Äv¨ ½ÂÀ¯Y
.|ÌÅ{ Ì̤e Y ZÆ¿M |Ì¿YÂeÊ» ¹Á· c { Á
{Ây ÉZÅÃ{Y{ ÃZ´ËZa ÉY] ÉÂ^ » |Ì¿YÂf] É| ] ĸu» { Ze |ÌÀ¯ ®Ì¸¯ Y Next
.|ÌÀ¯ ¾ÌÌ e
ZÅ Ã{Y{ ÃZ´ËZa ÃZ´ËZ»M 96
.{ ¶»Z¯ \¿ Ze |Ì¿Z¼] fÀ» Á |ÌÀ¯ ®Ì¸¯ Install ÄÀ˳ ÉÁ ]
97 dÂÌa
¶uY» ¹Z¼eY Á {ÂÊ» ÅZ Ë ¶° ª]Z» ÉYÄv¨ ÊeZÔY ®¿Z] \¿ Y a
.|À¯Ê» ¹ÔY Y \¿
Y|Ìa Programs ÉÂÀ» Y Y½M ¶ËZ¼e c { Á |ÌÀ¯ ®Ì¸¯ Y Finish ļ¯{ µZu
.|ÌÀ¯ YmY Á Ã{¯
ZÅ Ã{Y{ ÃZ´ËZa ÃZ´ËZ»M 98
SQL Server ¦¸fz» ÉZÅ Database ÉY] Z¼ į dY ¾ËY ʸY »
É]Z¯ 0Ôj» .|ÌÅ|] ÊZy Êf{ t ]Z¯ Å Ä] Á |ÌÀ¯ ¦Ë e ]Z¯ |Ì¿YÂeÊ»
ZÆÀe dY Y« į Ê¿Z» Y {Ây µZeY Äf Á |ËÌ´] ¿ { Ê¿|¿YÂy t Z] Y
,ħZY ÊeZÔY pÌÅ |ÌÅYÂyʼ¿ Á) |ÌZ] ÄfY{ ÊeZÔY ®¿Z] Y É̳Y³
.|ÌÀ¯ ¦Ë e ]Z¯ ¾ËY Y Ã{Z¨fY Z] (|ÌÀ¯ ËYËÁ ZË ¥~u
:0Ôj» ,|Å{Ê» Y« Z¼ ZÌfyY { Y ʨ¸fz» (Roles) ÉZŬ¿ SQL Server
...Á db_datareader ZË db_owner
]Z¯ ®Ë |ÌÀ¯Ê» \¿ Y (NET Framework) ÁºË§ d¿cY{ į Ê»Z´ÀÅ
Ä] į |ËY{ ZÌ¿ Ã{Y{ ÃZ´ËZa Z] Z¯ ÉY] .{ÂÊ» ħZY Z¼ Á|ÀËÁ Ä] |Ë|m (User)
99 dÂÌa
Y Ë ¶/uY» Z¯ ¾ËY ÉY] .|ÌÅ|] Y {Ây Data base Ä] Êf{ ÃZmY User ¾ËY
:|ÌÀ¯ µZ^¿{
.|ËÁ] Security z] Ä] Á |ÌÀ¯ Z] Y Enterprise Manager
É|Ë|m ÃnÀa .|ÌÀ¯ [Zzf¿Y Y New Login Á |ÌÀ¯ dY ®Ì¸¯ Logins d¼« ÉÁ
:{ÂÊ» Z]
d¼ { į ÉYļ¯{ ÉÁ ] ®Ì¸¯ Z] Name z] Y Á ÃnÀa ¾ËY General ij] {
¹Z¼e dÌ· ÉÁZu į {ÂÊ» Z] ÉYÃnÀa (½{¯ browse ÉY]) dÅ dY
.dY Á ÉÁ {Âm» ÉZÅUser
Ä] ÃZ]Á{ .|ÌÀ¯ Ok b .|ÌÀ¯ ®Ì¸¯ Add ļ¯{ ÉÁ Á |ÌÀ¯ Y|Ìa Y ½ZfÅYÂz·{ User
.|Ë{³Ê»] New Login ÃnÀa
ÉZÅÌq .|ÌÀ¯ [Zzf¿Y Y Authentication Windows ÄÀ˳ Authentication z] {
User ¾ËY ÉY] §Ìa Data base Á ½Z] |ÌZ] ½ZÌ̤e Ä] ¶ËZ» |ËZ į É´Ë{
.dY
ZÅ Ã{Y{ ÃZ´ËZa ÃZ´ËZ»M 100
z» Á { Y User ¾ËY ¬¿ |Ì¿YÂe Ê» Server Roles ij] ®¼¯ Ä]
|ÌÅYÂyÊ» į ÊËZÅ Database ˬ Database Access ij] ®¼¯ Ä] dËZÆ¿ { Á .|ÌÀ¯
ÉZŬ¿ ÃY¼ÅÄ]) .|ÌÀ¯Ê» z» Y |Z] ÄfY{ Êf{ ZÆ¿M Ä] ½ZfÅYÂz·{ User
(¿ {»
Á SQL Server ÉZÅUser ļn» Ä] ½ZfÅYÂz·{ User ˬ Ok ÉÁ ] ®Ì¸¯ Z]
Å ¶yY{ |Ì¿YÂe Ê» 0Y| ] .{ ʻ ħZY |ËY Ã{¯ z» į ÊËZÅ Database Ì¿
.|ÌÀ¯ µfÀ¯ Ì¿ Y µÁY|m Ä] Êf{ ½YÌ» Users z] ªË Y Database
Select Student ˬ
From Students where FirstName = "mahtab""
ORDER BY LastName ASC
Ã{Y{ Y« Z»Z¯ ®Ë ,1 y { Student Ä»Z¯ Y | ] į½M ¶Ì·{Ä] ©Â§ µZj» {
Y Ê·Á {{³Ê» (´Ë{ µÁ|m ®Ë) ´Ë{ cZ^ ®Ë µZ^¿{Ä] a ´Y{a Ã|
101 dÂÌa
Y Missing Expression ÉZy ¹Z¤Ìa ,{ÂÊ» ÄmY» From É|̸¯ ļ¸¯ Z] į Zn¿M
.|Å{Ê» ËZ¼¿
Email ½Âf ÉY]) dY f¼¯ ¿ {» µÁ|m ÉZÆ¿Âf Y Ë{Z¬» {Y| e ÓZ] Âf{ {
.{ÂÊ» ÅZ ©Â§ ÉZy ¹Z¤Ìa ¶Ì·{ ¾Ì¼Å Ä] Á (dY Ã|¿ Äf§³ ¿ { ÉY|¬»