2010-12-06 44 views

回答

2

如果你想要一列表中的一列引用另一个表,那么你最好的办法可能是阅读关于数据库设计中的键,主键和外键的概念。

例如,在公司和员工的数据库,你可能有2个表是这样的:

Company (c_id, name, city) 
Employee (e_id, c_id, name) 

在公司表,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

为什么你不能去外国的关系。

for eg : Table1 (ID,ForeignKeyId, other columns) 
     Table2 (ID,other columns) 

ForigenKeyId will be the primary key of Table2 
1

如果你真的需要表格作为列,你应该阅读http://msdn.microsoft.com/en-us/library/ms175010.aspx的解决方案。但是,这实际上不太需要表列数据类型,因为它主要用于临时存储。

如果您不知道主外键关系的东西,您应该花一些时间学习关系数据库,或者让某人根据业务实体和您的应用程序需要为您设计数据库模式。否则,你最终会得到一个完全无法维护的设计,而在中期它将会适得其反。

如果您需要快速阅读PK/FK主题,请阅读http://www.functionx.com/sqlserver2005/Lesson13.htm。它应该给你一个解决这个特定问题所需的知识。

相关问题