0

私はこれに慣れていないので、このストアド プロシージャを実行するとエラーが発生する理由がわかりません。

誰か助けてくれませんか!?

ALTER PROCEDURE [dbo].[Update_UserPassword]
    (@username nvarchar(50),
     @password nvarchar(20))
AS
BEGIN
    DECLARE @flag bit
    SET NOCOUNT ON;

    SET @flag = (SELECT firstloginflag 
                 FROM USER
                 WHERE username = @username)

    -- Insert statements for procedure here
    IF(@flag = 0)
        UPDATE USER 
        SET firstloginflag = 1, password = @password
        WHERE username = @username
    ELSE
        UPDATE USER 
        SET password = @password
        WHERE username = @username
END

これはエラーです:

メッセージ 208、レベル 16、状態 6、プロシージャ Update_UserPassword、行 31
無効なオブジェクト名 'dbo.Update_UserPassword'。

4

1 に答える 1

1

Update_UserPassword現在のデータベースまたはスキーマに既存のストアド プロシージャがありません。

間違ったデータベースにいて、 を実行する必要があるかuse [database name];、間違ったスキーマを使用してスキーマ名を前に追加する必要があるか、 を に変更する必要があり[schema].Update_UserPasswordます。ALTER PROCEDURECREATE PROCEDURE

于 2013-06-21T11:44:50.807 に答える