【发布时间】:2017-12-15 02:53:16
【问题描述】:
目前,我正在创建一个数据库,但我的表遇到了问题。
我有一个tblCustomer,其中包括一个autonumber 格式为Customer-001 的CustomerID,但是我有一个用于客户订购的tblOrder,并且这之间存在一对多的关系。
我有一个orderID 字段和autonumber,格式为Order-001。问题在于此表中的customerID,它的数据类型是number,但我使用查找来从tblCustomer 中获取CustomerID,以便添加到表Order。由于格式为Customer-001,其中有字母,因此数据类型有误。
【问题讨论】:
-
如果您无法调整表以使用现有键,您可以创建一个映射表,其中现有键获取唯一的数字 id 并相应地映射它们。不过,我现在会在您构建它时尝试调和。
-
在自动编号格式的数据库中,它必须包含字母。 customer-001 用作自动编号,但当我使用查找时它不会在其他表中工作。对我来说,让所有东西都只是数字会更容易,但不幸的是,我必须完成的任务也必须包含字符
-
两条建议:不要对 ID 列使用像这样的混合格式(尤其是像这样嵌入“-”),并避免使用自动编号。理想情况下,您希望将客户编号和订单编号等内容与现实世界中的某些事物联系起来。这样做你会遇到麻烦。
-
那么你能修复 tblOrder 中的 customerID 吗?使它们相同。
-
您认为将其转换为短文本格式会更好吗?这样我必须手动输入 ID,但在其他表中使用查找将 ID 添加到它