0
如果我有我的SQL Server 2005中的兩個表,我需要創建這些表之間的父子關係,以便我可以使用綁定導航器在vb.net 2008中檢索該數據?如何在sql server2005中創建父子關係?
如果我有我的SQL Server 2005中的兩個表,我需要創建這些表之間的父子關係,以便我可以使用綁定導航器在vb.net 2008中檢索該數據?如何在sql server2005中創建父子關係?
將主鍵和外鍵添加到要作爲父級和子級關聯的表中。
ALTER TABLE [dbo].[CHILD] WITH CHECK ADD CONSTRAINT [FK_PARENT__CHILD]
FOREIGN KEY([ID]) REFERENCES [dbo].[PARENT] ([ID]) ON UPDATE CASCADE
ON DELETE CASCADE
您需要設置兩個表之間的foreign key關係。
基本上這是一個表中的一列中包含另一行中的行的ID。
有兩種方法來設置它。
從維基百科頁面這個例子說明了代碼:
CREATE TABLE Supplier (
SupplierNumber INTEGER NOT NULL,
Name VARCHAR(20) NOT NULL,
Address VARCHAR(50) NOT NULL,
TYPE VARCHAR(10),
CONSTRAINT supplier_pk PRIMARY KEY(SupplierNumber),
CONSTRAINT number_value CHECK (SupplierNumber > 0))
CREATE TABLE Invoices (
InvoiceNumber INTEGER NOT NULL,
SupplierNumber INTEGER NOT NULL,
Text VARCHAR(4096),
CONSTRAINT invoice_pk PRIMARY KEY(InvoiceNumber),
CONSTRAINT inumber_value CHECK (InvoiceNumber > 0),
CONSTRAINT supplier_fk FOREIGN KEY(SupplierNumber)
REFERENCES Supplier(SupplierNumber)
ON UPDATE CASCADE ON DELETE RESTRICT)