कुछ इस तरह:
CREATE TRIGGER MyTrigger ON dbo.MyTable
AFTER INSERT
AS
if exists ( select * from table t
inner join inserted i on i.name=t.name and i.date=t.date and i.id <> t.id)
begin
rollback
RAISERROR ('Duplicate Data', 16, 1);
end
go
यह सिर्फ डालने के लिए है, हो सकता है कि आप अपडेट पर भी विचार करना चाहें।
अपडेट करें
एक आसान तरीका यह होगा कि टेबल पर केवल एक अद्वितीय बाधा उत्पन्न की जाए, यह इसे अपडेट के लिए भी लागू करेगा और ट्रिगर की आवश्यकता को हटा देगा। बस करें:
ALTER TABLE [dbo].[TableName]
ADD CONSTRAINT [UQ_ID_Name_Date] UNIQUE NONCLUSTERED
(
[Name], [Date]
)
और फिर आप व्यवसाय में होंगे।