¾È³çÇϼ¼¿ä.
ReplyReply ÀúÀå ÇÁ·Î½ÃÀú¸¦
È£ÃâÇÏ´Â ºÎºÐ¿¡¼ ºÎ¸ð ±ÛÀÇ Num¸¦
ÀúÀå ÇÁ·Î½ÃÀú¿¡¼´Â @ParentNum ¶õ À̸§À¸·Î ³Ñ°ÜÁØ ³»¿ëÀÔ´Ï´Ù.
@ParentNum ºÎºÐÀ» @Num¶ó°í Çصµ ÀüÇô »ó°ü¾ø½À´Ï´Ù.
±èÁø¸¸ ´ÔÀÌ ¾²½Å ¿ø¹® ±ÛÀÔ´Ï´Ù.
¾È³çÇϼ¼¿ä °»ç´Ô
3.5 °Ô½ÃÆÇ °Á¿¡¼ ´äº¯Çü °Ô½ÃÆÇÀ» ¼³°èÇÒ¶§´Â ParentNum¶ó´Â Çʵ尡 µû·Î ¾ø½À´Ï´Ù.
ÇÏÁö¸¸ ´äº¯ °ü·Ã Stored Procedure¸¦ ¸¸µé¶§´Â @ParentNum°¡ ³ª¿À´Âµ¥
ÀÌ¿¡ °üÇÑ ¼³¸íÀÌ »ý·«µÇ¾î¼ @ParentNumÀÇ ¿ªÇÒÀÌ ±Ã±ÝÇÕ´Ï´Ù.
±×¸®°í @ParentNum¶ó´Â º¯¼ö´Â ReplyReplyÀÇ SP¿¡
Select @ParentRef = Ref, @ParentStep = Step, @ParentRefOrder = RefOrder
From Reply
Where Num = @ParentNum ¶ó°í¸¸ µÇ¾îÀִµ¥¿ä.
Å×ÀÌºí¿¡ ParentNum Çʵ尡 µû·Î Á¸ÀçÇÏÁö ¾Ê´Âµ¥...Num¿Í ¾î¶»°Ô ºñ±³°¡ µÇ´ÂÁö¸¦ ¾Ë°í½Í½À´Ï´Ù.
¾Æ·¡´Â °»ç´Ô²²¼ °ÀÇÇØÁֽŠ3.5 ´äº¯Çü °Ô½ÃÆÇ Å×À̺í°ú ReplyReply SP ÀÔ´Ï´Ù.
--------------------------------------------------------------------
<´äº¯Çü °Ô½ÃÆÇ Å×À̺í>
Create Table dbo.Reply
(
Num Int Identity(1, 1) Not Null Primary Key, --¹øÈ£
Name VarChar(25) Not Null, --À̸§
Email VarChar(100) Null, --À̸ÞÀÏ
Title VarChar(150) Not Null, --Á¦¸ñ
PostDate DateTime Default GetDate() Not Null, --ÀÛ¼ºÀÏ
PostIP VarChar(15) Not Null, --ÀÛ¼ºIP
Content Text Not Null, --³»¿ë
Password VarChar(20) Not Null, --ºñ¹Ð¹øÈ£
ReadCount Int Default 0, --Á¶È¸¼ö
Encoding VarChar(10) Not Null, --ÀÎÄÚµù(HTML/Text)
Homepage VarChar(100) Null, --ȨÆäÀÌÁö
ModifyDate DateTime Null, --¼öÁ¤ÀÏ
ModifyIP VarChar(15) Null, --¼öÁ¤IP
----------
Ref Int Not Null, --ÂüÁ¶(ºÎ¸ð±Û)
Step Int Default 0, --´äº¯±íÀÌ(·¹º§)
RefOrder Int Default 0 --´äº¯¼ø¼
)
Go
Create Proc dbo.ReplyReply
@Name VarChar(25), @Email VarChar(100),
@Title VarChar(150), @PostIP VarChar(15),
@Content Text, @Password VarChar(20),
@Encoding VarChar(10),
@Homepage VarChar(100),
@ParentNum Int -- ºÎ¸ð±ÛÀÇ Num Çʵ尪 ¹Þ±â -> Ref, Step, RefOrder
As
Declare @ParentRef Int
Declare @ParentStep Int
Declare @ParentRefOrder Int
Select @ParentRef = Ref, @ParentStep = Step, @ParentRefOrder = RefOrder
From Reply
Where Num = @ParentNum
Begin Tran
-- ºñÁý°í µé¾î°¥ ÀÚ¸® ¸¸µé±â
Update Reply
Set RefOrder = RefOrder + 1
Where
Ref = @ParentRef And RefOrder > @ParentRefOrder
-- ºÎ¸ð±Ûº¸´Ù StepÀ» 1Áõ°¡, º¸¿©Áö´Â¼ø¼µµ 1Áõ°¡
Insert Reply (
Name, Email, Title, PostIP, Content, Password,
Encoding, Homepage, Ref, Step, RefOrder
)
Values (
@Name, @Email, @Title, @PostIP, @Content, @Password,
@Encoding, @Homepage, @ParentRef, @ParentStep + 1, @ParentRefOrder + 1
)
Commit Tran
Go
|