更新存储过程不起作用 [英] Update Stored Procedure Not Working

查看:179
本文介绍了更新存储过程不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,

我有一个简单的存储过程,其中更新了sql表中的某些数据.执行过程时没有出现任何错误,但是过程内的更新查询未更新值.请找到以下步骤.

Hi all,

I have a simple stored procedure in which i update some data in the sql table. I am not getting any error when i execute the procedure but the update query inside the procedure is not updating the value. Please find the procedure below.

CREATE PROCEDURE [dbo].[UpdateEmpdata]
	@EmpID VARCHAR(50) 
    	
AS
BEGIN
    SET NOCOUNT ON;
    
    DECLARE @Domain AS VARCHAR(255)
     
    SELECT TOP 1 @Domain = D.SubDomain
    FROM Employee E, Domain D
    WHERE E.EmployeeID=D.DomainID
    AND E.EmployeeID=@EmpID	
 
    UPDATE EmpData
    SET Domain =  @Domain
    WHERE EmployeeID= @EmpID                 
         
END
GO


当我运行该过程时,它不会更新任何Domain值.它也没有给出任何错误.
EXEC EmpData''21211111''

但是当我分别运行查询时,它就可以工作了!!!!


When i run the procedure, it is not updating any Domain value. It is also not giving any error.
EXEC EmpData ''21211111''

But when i run the query separately, it is working !!!!

DECLARE @Domain AS VARCHAR(255)
SELECT TOP 1 @Domain = D.SubDomain
    FROM Employee E, Domain D
    WHERE E.EmployeeID=D.DomainID
    AND E.EmployeeID='21211111'

    UPDATE EmpData
    SET Domain =  @Domain
    WHERE EmployeeID= @EmpID



这意味着查询没有问题.

但是我不明白为什么在执行该过程时数据没有更新.

请帮忙.

在此先谢谢您.



That means there is no issues with the query.

But i am not understanding why the data is not updating while running through the procedure.

Please help.

Thanks in advance.

推荐答案

检查执行存储过程时使用的过程名称.如果我没有记错的话,它是"UpdateEmpdata"
不是"EmpData"
EXEC EmpData ''21211111''
所以应该是
EXEC UpdateEmpdata ``21211111''
check your procedure name used while executing store procedure.if i am not wrong it''s "UpdateEmpdata"
not "EmpData"
EXEC EmpData ''21211111''
so it should be
EXEC UpdateEmpdata ''21211111''


这篇关于更新存储过程不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆