2009-05-25 3 views
4

다음과 같이 저장 프로 시저를 스크립팅했습니다. 오류없이 구문 분석하지만 실행하려고하면 오류가 발생합니다. 오류 메시지는 다음과 같습니다. 메시지 208, 수준 16, 상태 6, 프로 시저 aspnet_updateUser, 줄 23 잘못된 개체 이름 'dbo.aspnet_updateUser'.저장 프로 시저가 올바르게 구문 분석되지만 실행되지 않습니다. 개체 이름이 잘못되었습니다. msg 208

다음은 저장 프로 시저입니다.

USE [PMRS2] 
GO 
/****** Object: StoredProcedure [dbo].[aspnet_updateUser] Script Date: 05/25/2009 15:29:47 ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
-- ============================================= 
-- Author:  <Author,,Name> 
-- Create date: <Create Date,,> 
-- Description: <Description,,> 
-- ============================================= 
ALTER PROCEDURE [dbo].[aspnet_updateUser] 
    -- Add the parameters for the stored procedure here 
    @UserName nvarchar(50), 
    @Email nvarchar(50), 
    @FName nvarchar(50), 
    @LName nvarchar(50), 
    @ActiveFlag bit, 
    @GroupId int 

AS 
BEGIN 
    -- SET NOCOUNT ON added to prevent extra result sets from 
    -- interfering with SELECT statements. 
    SET NOCOUNT ON; 

    -- Insert statements for procedure here 

UPDATE dbo.aspnet_Users 
    SET UserName = @UserName, LoweredUserName = LOWER(@UserName), Email = @Email, FName = @FName, LName = @LName, ActiveFlag = @ActiveFlag, GroupId = @GroupId 
    WHERE LoweredUserName = LOWER(@UserName) 
END 

답변

13

아직 존재하지 않는 것 같습니다. 변경 사항을 만들기로 바꿉니다.

+1

저는 바보입니다. 그에게 감사합니다 – Chris

+1

+1 다른 사람을 때리는;) – gbn

+2

우리 모두에게 일어난다! – Martynnw

0

furture에서 이러한 일이 발생하지 않도록하려면 우리가하는 일을하고 alter proc을 사용하지 마십시오. 대신에 우리는 proc의 존재 여부를 확인한 후 그 코드가 있다면 그것을 삭제하고 새로운 코드로 생성합니다 :

IF EXISTS (SELECT * FROM sysobjects WHERE type = 'P' AND name = 'myProc') 
BEGIN 
    DROP Procedure myProc 
END 
GO 

CREATE PROCEDURE myProc 
(add the rest of the proc here) 
관련 문제