我在這裏有一點設計問題。我有一個新手,所以我需要一些幫助。 由於公司合併,一切都必須在其中一個系統中進行;我應該把我們的客戶與另一家公司的新客戶進行映射。如何設計映射表?
當我得到新的customerID的我應該確保它是唯一的,同樣適用於我們現有的customerID。
Current customerID: CurCustID
New customer ID: NewCustID
首先,我想的數據庫,以確保在列CurCustID每CurCustID是獨一無二的 - 只有一條記錄,其次我想列NewCustID是唯一的 - 只有一個記錄。第三我希望CurCustID和NewCustID的行組合只接受唯一的數據。
如果你能幫助我,我會非常感激,另一方面,如果我的方法是不好的做法,並有一個最佳實踐方法,那麼請讓我知道。
USE [Database]
GO
/****** Object: Table [dbo].[TblMapning] Script Date: 05/30/2016 14:30:21 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[TblMapning](
[CurCustID] [varchar](255) NOT NULL,
[NewCustID] [varchar](255) NOT NULL,
PRIMARY KEY CLUSTERED
(
[CurCustID] 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
SET ANSI_PADDING OFF
GO
如果您必須合併兩張客戶表,我認爲最好的做法是將新增公司的客戶帶入客戶表。 由於您在將新公司客戶遷移到現有客戶時可能有重複項,因此您必須考慮更新舊ID(以使其唯一),但必須在引用此ID的所有子表中更改此ID 。 –
@Shukri Gashi。不幸的是,這是不可能的,由於法律問題:-( –