¾È±Ô °øºÎ¹æ

MS-SQL > Data Integrity - FOREIGN KEY

µî·ÏÀÏ : 2017-07-03 14:32 Á¶È¸¼ö : 33,566

Æ÷¸°Å° Constraints´Â µ¥ÀÌŸ ¸ðµ¨¸µÀÇ Æ÷¸° Å°¸¦ ±¸ÇöÇÒ°ÍÀ¸·Î Referential Integrity¸¦
 
±¸ÇöÇϱâ À§ÇÑ ÇϳªÀÇ ¹æ¹ýÀÔ´Ï´Ù. ÀÌ°ÍÀº ÀϹÝÀûÀ¸·Î ¾÷¹« ±ÔÄ¢¿¡¼­ ÁÖÁ¾°ü°è°¡ ÀÖ´Â µÎ
 
Å×ÀÌºí°£¿¡ »ç¿ëµÇ¸ç Á¾¼ÓµÇ´Â Å×À̺íÀÇ Å° Ä÷³ÀÌ ÁÖ°¡ µÇ´Â Å×À̺íÀÇ ÇÁ¶óÀ̸Ӹ® Å° ¶Ç´Â
 
À¯´ÏÅ© Constraints Ä÷³À» ÂüÁ¶ÇÔÀ» ÀǹÌÇÏ°Ô µË´Ï´Ù.
 
¾Æ·¡»çÇ×Àº Æ÷¸°Å°¸¦ »ç¿ëÇÒ¶§ °í·ÁÇÒ »çÇ×ÀÔ´Ï´Ù.
 
     
¡á Æ÷¸°Å°´Â Çϳª ÀÌ»óÀÇ Ä÷³¿¡ ´ëÇؼ­ ¼±¾ðÇÒ¼ö ÀÖ´Ù. (µ¥ÀÌÅÍ Å¸ÀÔÀÌ È£È¯µÇ¾ßÇÔ).
¡á Å° Ä÷³ÀÇ µ¥ÀÌŸ´Â ÇÕÇؼ­ 900byte¸¦ ³ÑÀ» ¼ö ¾ø´Ù.
¡á Æ÷¸°Å° Ä÷³Àº ¹èºÎÀûÀ¸·Î À妽º¸¦ ¸¸µéÁö ¾Ê´Â´Ù.
¡á Æ÷¸°Å°¸¦ ¼³Á¤Çϱâ Àü¿¡ ¸ÕÀú ÂüÁ¶µÇ´Â Å×À̺íÀÌ »ý¼ºµÇ¾î ÀÖ¾î¾ß ÇÑ´Ù.
¡á Æ÷¸°Å°·ÎºÎÅÍ ÂüÁ¶µÇ´Â Å×À̺íÀº Á¦°ÅÇÒ¼ö ¾øÀ¸¹Ç·Î Å×À̺íÀ» Á¦°ÅÇÒ¶§´Â ¸ÕÀú Æ÷¸°Å°
°ü°è¸¦ Á¦°ÅÇϰųª Æ÷¸°Å°¸¦ °¡Áø Å×À̺íÀ» Á¦°ÅÇØ¾ß ÇÑ´Ù.
¡á with nocheck,nocheck¿É¼ÇÀ¸ »ç¿ëÇÏ¿© ±âÁ¸ÀÇ µ¥ÀÌÅͳª »õ·Î ÀúÀåµÇ´Â µ¥ÀÌÅÍ¿¡ ´ëÇؼ­
Æ÷¸°Å° Constraints°¡ Àû¿ëµÇÁö ¾Ê°Ô ÇÒ¼öµµ ÀÖ´Ù.
   
 
´ÙÀ½ ¿¹Á¦´Â ÃâÆǻ縦 ÀǹÌÇÏ´Â pubs Å×À̺í°ú ÃâÆǻ翡 Æì³½ Ã¥À» ÀǹÌÇÏ´Â book1,book2 Å×À̺íÀ»
 
¸ðµ¨¸µÇÏ¿© Ç¥ÇöÇÑ °ÍÀÔ´Ï´Ù.
 
book1 °ú book2 Å×À̺íÀº Æ÷¸°Å°¸¦ °¡Áö°í ÀÖÀ¸¸ç ÀÌ Å° Ä÷³Àº ¸ðµÎ pubs Å×À̺íÀÇ ÇÁ¶óÀ̸Ӹ®
 
Å°¸¦ ÂüÁ¶ ÇÏ°í ÀÖ½À´Ï´Ù.
 
	CREATE TABLE pubs
	(
		pub_id int NOT NULL PRIMARY KEY,
		name varchar(10) NULL
	)
  
	CREATE TABLE book1
	(
		book_id int NOT NULL PRIMARY KEY,
		pub_id int NOT NULL REFERENCES pubs(pub_id),  <-- Ä÷³ ´ÜÀ§ Æ÷¸°Å° ¼±¾ð
		name varchar(10) NULL
	)  
  
	CREATE TABLE book2
	(
		book_id int NOT NULL PRIMARY KEY,
		pub_id int NOT NULL,
		name varchar(10) NULL
			CONSTRAINT fk_pub_id 
				FOREIGN KEY(pub_id)
				REFERENCES pubs(pub_id)            <-- Å×ÀÌºí ´ÜÀ§ Æ÷¸°Å° ¼±¾ð
	)  
	       

        
Äõ¸®ºÐ¼®±â¿¡¼­ ½ÇÇàÇØ º¸¼¼¿ä...
 

 
À§ÀÇ ±×¸²Àº ¿£ÅÍÇÁ¶óÀÌÁî °ü¸®ÀÚ¿¡¼­ pubs,book1,book2Å×ÀÌºí¿¡ ´ëÇÑ ´ÙÀ̾î±×·¥ÀÔ´Ï´Ù.
 
¸¶¿ì½º ¿À¸¥ÂÊÅ°¸¦ ´©¸¥ÈÄ °ü°è¸¦ È®ÀÎÇØ º¸½Ã±â ¹Ù¶ø´Ï´Ù.
 
»õ·Î¿î °ü°è¸¦ ¸ÎÀ» ¼öµµ ÀÖÀ¸¸ç, °ü°è¸¦ »èÁ¦ÇÒ¼öµµ ÀÖ½À´Ï´Ù.
 
±×·³, ¿À´ÃÀº ¿©±â°¡Áö¸¸ »ìÆ캸±â·ç Çϱ¸¿©, Á»´õ ÀÚ¼¼ÇÑ »çÇ×À» ¾Ë°í ½ÍÀ¸½Ã¸é Àü¹®¼­ÀûÀ» ÂüÁ¶ÇÏ
 
½Ã±â ¹Ù¶ø´Ï´Ù.
 
¡Ø Ȥ½Ã µµ¿òÀÌ µÇ¼Ì´Ù¸é ´ñ±Û¿¡ ÇѸ¶µð ³²°ÜÁÖ¼¼¿ä!
ÀÛ¼ºÀÚ   ºñ¹Ð¹øÈ£
ÀÚµ¿±Û ¹æÁö     (ÀÚµ¿±Û ¹æÁö ±â´ÉÀÔ´Ï´Ù.)
³»¿ë   ´ñ±Û´Þ±â 
À̸ÞÀÏ ¹®ÀÇ : cak0280@nate.com  
Copyright 2000 By ENTERSOFT.KR All Rights Reserved.