sql >> Database >  >> RDS >> Sqlserver

Samengestelde primaire sleutel + externe sleutel

Ja, dat 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)
) ;

Meestal niet relevant voor uw probleem, maar met een PRIMARY KEY dat is zo breed (410 nvarchars) is niet het beste idee.



  1. Mysql externe sleutel door niet-unieke sleutel - hoe is dat mogelijk?

  2. Echt versus drijvende komma versus geld

  3. Bitmap Heap Scan-prestaties

  4. Hoe gegevens ophalen uit een SQL Server-database in C#?