0
我的問題是如何執行特定的存儲過程。當我執行特定事件時,它給我一個錯誤:在四個事件中執行SQL Server 2008中的存儲過程
Procedure or function 'StoredProcedureNames' expects parameter '@empid', which was not supplied
我該如何提供它?我的SQL是:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE StoredProcedureNames
@event tinyint,
@empid int,
@emp_name varchar(50),
@emp_phno char(10),
@emp_add nvarchar(75)
AS
IF @event = 1
BEGIN
INSERT INTO employee_test (emp_name,emp_phno,emp_add,empid)
VALUES (@emp_name,@emp_phno,@emp_add,@empid)
END
ELSE IF @event = 2
BEGIN
UPDATE employee_test SET
emp_name = @emp_name,
emp_phno = @emp_phno,
emp_add = @emp_add,
empid = @empid
WHERE (emp_Add = @emp_add
and emp_name = @emp_name
and emp_phno = @emp_phno
and empid = @empid)
END
ELSE IF @event = 3
BEGIN
select empid,emp_phno from employee_test
where (emp_Add = @emp_add or emp_name = @emp_name) -- when i execute any event say exex sp 3 it shows a error
END
ELSE IF @event = 4
BEGIN
DELETE FROM employee_test
WHERE (emp_phno = @emp_phno or emp_name = @emp_name)
End
錯誤它表明,當我不是提供所有字段值
Error converting data type varchar to int.
這是什麼意思?
你是如何執行存儲過程做?聽起來就像你沒有提供足夠的參數,而你缺少的參數正在被解釋爲另一個參數。 – Lojko