如何将表1中的列添加为表2的类型?

时间:2010-12-06 07:34:07

标签: sql-server

我定义了表1。 现在我想添加新表 - 第二个表的列之一需要是第一个表 -

我该怎么办?

3 个答案:

答案 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工作的员工的姓名。

链接:

http://en.wikipedia.org/wiki/Primary_key

http://en.wikipedia.org/wiki/Foreign_key

答案 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。它应该为您提供解决此特定问题所需的知识。