我定义了表1。 现在我想添加新表 - 第二个表的列之一需要是第一个表 -
我该怎么办?
答案 0 :(得分:2)
如果您希望表的一列引用另一个表,那么您最好的选择是阅读数据库设计中的键,主键和外键的概念。
例如,在公司和员工的数据库中,您可能有2个这样的表:
Company (c_id, name, city)
Employee (e_id, c_id, name)
在Company表中,c_id将是主键。在Employee表中,c_id将是引用公司的外键。这将允许您执行类似
的查询SELECT E.name
FROM Employee as E, Company as C
WHERE E.c_id = C.c_id AND C.name = "IBM"
将返回在IBM工作的员工的姓名。
链接:
答案 1 :(得分:1)
为什么你不能去寻求外交关系。
for eg : Table1 (ID,ForeignKeyId, other columns)
Table2 (ID,other columns)
ForigenKeyId will be the primary key of Table2
答案 2 :(得分:1)
如果您确实需要将表作为列,则应阅读http://msdn.microsoft.com/en-us/library/ms175010.aspx以获取解决方案。但是,您真的需要表列数据类型,因为它主要用于临时存储。
如果您不了解主要外键关系的内容,则应花些时间学习关系数据库,或让某人根据业务实体和您的应用程序需求为您设计数据库架构。否则你最终会得到一个完全无法维护的设计,而中期它会适得其反。
如果您需要快速阅读PK / FK主题,请阅读http://www.functionx.com/sqlserver2005/Lesson13.htm。它应该为您提供解决此特定问题所需的知识。