I am trying to programmatically enter values into my table.
I cannot use a straight Select @variables. I have to use the keyword Values.
How can I create a where clause when using Values in the insert into.
I am trying to avoid duplicates
DECLARE @MyID INT DECLARE @Phone varchar(10) DECLARE @MyDATE DateTime DECLARE @Agent as varchar(50) DECLARE @Charge as varchar(50) DECLARE @Vendor as varchar(50) SET @MyID = 215199999 SET @Phone = '9999999999' SET @MyDATE = '2010-12-04 11:56:12.000' SET @Agent = 'fbrown' SET @Charge = 'NO' SET @Vendor = 'NO' INSERT INTO [MyDB].[dbo].[Accounts] (MyID,Phone,MyDate,Agent,Charge,Vendor) VALUES ( @MyID ,@Phone ,@MyDATE ,@Agent ,@Charge ,@Vendor ) WHERE MyID NOT IN (@MyID)
Advertisement
Answer
IF NOT EXISTS(SELECT 1 FROM [MyDB].[dbo].[Accounts] WHERE MyID = @MyID) INSERT INTO [MyDB].[dbo].[Accounts] (MyID, Phone, MyDate, Agent, Charge, Vendor) VALUES (@MyID, @Phone, @MyDATE, @Agent, @Charge, @Vendor)