CREATE PROCEDURE [dbo].[up_guild_disband] @guild_id [uniqueidentifier], @character_id [uniqueidentifier] AS BEGIN SET NOCOUNT ON; SET XACT_ABORT ON; DECLARE @result_code INT; SET @result_code = 1; --1 : 성공 / -1 : 프로시저 오류 / -2 : INSERT 실패 / -3 : UPDATE 실패 BEGIN TRY BEGIN TRAN; --DELETE FROM [dbo].[GuildMemberTable] WHERE guild_id = @guild_id --Update [dbo].[GuildTable] set [name] = '___'+[name], [master_id] = NULL, [block_type]=1 WHERE guild_id = @guild_id --UPDATE [dbo].[CharacterTable] SET [GuildID] = NULL -- ,[GuildPoint] = 0 WHERE [character_id] = @character_id --캐릭터 테이블의 길드 정보 삭제 UPDATE [dbo].[CharacterTable] SET [GuildID] = NULL ,[GuildPoint] = 0 WHERE [character_id] = @character_id --길드 삭제 테이블에 길드 정보 이동 INSERT INTO [dbo].[GuildTable_DELETE] SELECT *, GETDATE() FROM [dbo].[GuildTable] AS S with (READUNCOMMITTED) WHERE S.[guild_id] = @guild_id --길드 관련 테이블 삭제 DELETE FROM [dbo].[tbl_Guild_Exp_List] WHERE [guild_id] = @guild_id DELETE FROM [dbo].[tbl_Guild_Skill] WHERE [guild_id] = @guild_id DELETE FROM [dbo].[tbl_Guild_Storage_Info] WHERE [guild_id] = @guild_id DELETE FROM [dbo].[tbl_Guild_Storage_Item] WHERE [guild_id] = @guild_id DELETE FROM [dbo].[tbl_Guild_Storage_Use_List] WHERE [guild_id] = @guild_id DELETE FROM [dbo].[GuildMemberTable] WHERE [guild_id] = @guild_id --길드 테이블 삭제 DELETE FROM [dbo].[GuildTable] WHERE [guild_id] = @guild_id COMMIT TRAN; SELECT result_code = @result_code; --결과 코드 전달 END TRY BEGIN CATCH ROLLBACK TRAN; SELECT result_code = -1; END CATCH END