if (SELECT * FROM SDOPTTABLE WHERE OPTTABLENO = '324' AND OPTTABLEVAL = '00883578') = null
insert into SDOPTTABLE(comp_cd, opttableno, opttableval, optname, dt_stamp)
values ('1','324','00883578','STOCKROOM ATTENDANT',getdate())
SELECT * FROM SDOPTTABLE WHERE OPTTABLENO = '324' AND OPTTABLEVAL = '00883578'
else
(SELECT * FROM SDOPTTABLE WHERE OPTTABLENO = '324' AND OPTTABLEVAL = '00883578')
我想验证并且已经插入了不存在的数据输入后,再次从“SDOPTTABLE”表中“选择”。
任何人都可以告诉我这样做的正确方法吗?感谢。
我的代码
INSERT INTO HCSERVREC (COMP_CD, JOBTL_CD, JOBGD_CD)
select '1', ( if NOT EXISTS(
SELECT 1
FROM SDOPTTABLE
WHERE OPTTABLENO = '324'
AND OPTTABLEVAL = '00883578'
)
BEGIN
INSERT INTO SDOPTTABLE (
comp_cd
,opttableno
,opttableval
,optname
,dt_stamp
)
VALUES (
'1'
,'324'
,'00883578'
,'STOCKROOM ATTENDANT'
,getdate()
)
END
SELECT *
FROM SDOPTTABLE
WHERE OPTTABLENO = '324'
AND OPTTABLEVAL = '00883578'), '[$9]'
你能指出错误的地方吗?
答案 0 :(得分:2)
试试这个
IF NOT EXISTS (
SELECT 1
FROM SDOPTTABLE
WHERE OPTTABLENO = '324'
AND OPTTABLEVAL = '00883578'
)
BEGIN
INSERT INTO SDOPTTABLE (
comp_cd
,opttableno
,opttableval
,optname
,dt_stamp
)
VALUES (
'1'
,'324'
,'00883578'
,'STOCKROOM ATTENDANT'
,getdate()
)
END
SELECT *
FROM SDOPTTABLE
WHERE OPTTABLENO = '324'
AND OPTTABLEVAL = '00883578'