Я использую SQL Server 2005 и хочу вставить строку в таблицу базы данных, однако я получаю неправильный синтаксис в значениях. а также я хочу убедиться, что то, что я добавляю, уже не существует, я думаю, что это правильно, но у меня есть одна синтаксическая ошибка.
create PROCEDURE [dbo].[directway]
@tour as varchar(50),
@tourname as varchar(50),
@taskname as varchar(50) ,
@deptdate as varchar(50),
@tasktype as varchar(50) ,
@desc as varchar(50) ,
@duedate as varchar(50) ,
@agent as varchar(50),
@graceperiod as varchar(50)
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
INSERT INTO dashboardtasks
([tour]
,[tourname]
,[taskname]
,[deptdate]
,[tasktype]
,[desc]
,[duedate]
,[agent]
,[graceperiod]
VALUES (@tour,
@tourname,
@taskname ,
@deptdate,
@tasktype ,
@desc ,
@duedate ,
@agent ,
@graceperiod
)
WHERE NOT EXISTS(SELECT *
FROM dashboardtasks
WHERE ( @tour = dashboardtasks.tour
and @taskname = dashboardtasks.taskname
and @deptdate = dashboardtasks.deptdate
and @duedate = dashboardtasks.duedate
and @tourname = dashboardtasks.tourname
and @agent = dashboardtasks.agent
)
)
END