Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

एकाधिक तालिकाओं में SQL अद्वितीय बाधा

विशेष रूप से इन मानों के लिए एक चौथी तालिका जोड़ें, जिसे आप अद्वितीय बनाना चाहते हैं, फिर इन कुंजियों को इस तालिका से एक से कई संबंधों का उपयोग करके अन्य में लिंक करें। उदाहरण के लिए आपके पास एक आईडी, ऐपनाम और आइटमनाम के साथ अद्वितीय तालिका होगी। स्तंभ। फिर इस टेबल को दूसरों के साथ लिंक करें।

इसे कैसे करें, इसके लिए यहां एक अच्छा उदाहरण है SQL सर्वर का उपयोग करके एक से अनेक संबंध बनाएं

संपादित करें: मैं यही करूँगा लेकिन अपने सर्वर की ज़रूरतों को ध्यान में रखते हुए आप जो आवश्यक है उसे बदल सकते हैं:

CREATE TABLE AllItems(
    [id] [int] IDENTITY(1,1) NOT NULL,
    [itemType] [int] NOT NULL,
    [AppName] [nvarchar](20) NOT NULL,
    [ItemName] [nvarchar](32) NOT NULL,
    CONSTRAINT [pk_AllItems] PRIMARY KEY CLUSTERED ( [id] ASC )
) ON [PRIMARY]

CREATE TABLE Analog(
    [itemId] [int] NOT NULL,
    [Value] [float] NOT NULL
)

CREATE TABLE Discrete(
    [itemId] [int] NOT NULL,
    [Value] [bit] NOT NULL
)

CREATE TABLE Message(
    [itemId] [bigint] NOT NULL,
    [Value] [nvarchar](256) NOT NULL
)

ALTER TABLE [Analog] WITH CHECK 
    ADD CONSTRAINT [FK_Analog_AllItems] FOREIGN KEY([itemId])
REFERENCES [AllItems] ([id])
GO
ALTER TABLE [Analog] CHECK CONSTRAINT [FK_Analog_AllItems]
GO

ALTER TABLE [Discrete] WITH CHECK 
    ADD CONSTRAINT [FK_Discrete_AllItems] FOREIGN KEY([itemId])
REFERENCES [AllItems] ([id])
GO
ALTER TABLE [Discrete] CHECK CONSTRAINT [FK_Discrete_AllItems]
GO

ALTER TABLE [Message] WITH CHECK 
    ADD CONSTRAINT [FK_Message_AllItems] FOREIGN KEY([itemId])
REFERENCES [AllItems] ([id])
GO
ALTER TABLE [Message] CHECK CONSTRAINT [FK_Message_AllItems]
GO

जो मैं बता सकता हूं कि आपका सिंटैक्स ठीक है, मैंने इसे केवल इस तरह से बदल दिया है क्योंकि मैं इससे अधिक परिचित हूं लेकिन दोनों में से किसी एक को काम करना चाहिए।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. सीएएल लाइसेंसिंग के तहत SQL सर्वर 2012 एंटरप्राइज़ संस्करण के साथ प्रदर्शन समस्याएं

  2. EF अनावश्यक नल-चेक के साथ SQL क्वेरी क्यों उत्पन्न कर रहा है?

  3. SSRS 2014 रिपोर्ट परिनियोजित समस्या

  4. रैंड () SQL सर्वर में उदाहरण

  5. मैं LIKE क्लॉज में वर्गाकार कोष्ठकों से कैसे बच सकता हूँ?