foreign key

  • CREATE TABLE [dbo].[docfol](

    [folderid] [int] NOT NULL,

    [docid] [int] NOT NULL,

    CONSTRAINT [PK_docfol] PRIMARY KEY CLUSTERED

    (

    [folderid] ASC,

    [docid] ASC

    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

    ) ON [PRIMARY]

    GO

    CREATE TABLE [dbo].[document](

    [docid] [int] NOT NULL,

    [name] [nvarchar](50) NULL,

    CONSTRAINT [PK_document] PRIMARY KEY CLUSTERED

    (

    [docid] ASC

    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

    ) ON [PRIMARY]

    GO

    CREATE TABLE [dbo].[folder](

    [folderid] [int] NOT NULL,

    [foldername] [nvarchar](50) NULL,

    CONSTRAINT [PK_folder] PRIMARY KEY CLUSTERED

    (

    [folderid] ASC

    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

    ) ON [PRIMARY]

    main table is docfol and document and folder is chield tables.

    i need foreign key on document and folder table from docfol table.

    is it posible?

  • ALTER TABLE dbo.docfol

    ADD CONSTRAINT FK_folderid_folder

    FOREIGN KEY folderid

    REFERENCES dbo.folder(folderid)

    GO

    ALTER TABLE dbo.docfol

    ADD CONSTRAINT FK_docid_document

    FOREIGN KEY docid

    REFERENCES dbo.document(docid)

    GO

  • Sure, you need 2 foreign keys and you add them like this:

    ALTER TABLE dbo.docfol

    ADD

    CONSTRAINT FK_docfol_document FOREIGN KEY (docid) REFERENCES dbo.document (docid),

    CONSTRAINT FK_docfol_folder FOREIGN KEY (folderid) REFERENCES dbo.folder (folderid)

Viewing 3 posts - 1 through 3 (of 3 total)

You must be logged in to reply to this topic. Login to reply