sql >> Database teknologi >  >> RDS >> Sqlserver

Sammensat primærnøgle + fremmednøgle

Ja, du kan:

CREATE TABLE [dbo].[VariableMappings](
    [ParentSurvey_ID] [nvarchar](4) NOT NULL,
    [ReportingMonth] [nvarchar](6) NOT NULL,
    [VariableName] [nvarchar](400) NOT NULL,
    [Value] [int] NOT NULL,
  PRIMARY KEY (ParentSurvey_ID, ReportingMonth, VariableName),
  FOREIGN KEY (ParentSurvey_ID)
    REFERENCES dbo.SurveyMaster (ID)
) ;

For det meste irrelevant for dit problem, men med en PRIMARY KEY det er så bredt (410 nvarchars) er ikke den bedste idé.



  1. Hvad er din mening om at bruge tekstlige identifikatorer i tabelkolonner, når du nærmer dig databasen med normalisering og skalerbarhed i tankerne?

  2. hvordan man får værdier for samme kolonnenavn fra to forskellige tabeller i SQL

  3. Sådan åbnes XML-data i Oracle

  4. SQL - Lagret procedure med Select Statement ved hjælp af IN (@Variable_CommaDelimitedListOfIDS)