Web应用程序是用经典ASP编写的,带有MSSQL后端。在此特定页面上,管理员可以选择1个或任何/所有员工来分配项目。我试图找出一种简单的方法来将分配给它的人员的员工ID存储在一列中。
员工列表是从另一个表生成的,可以是动态的(解雇或雇用),因此我希望程序足够灵活,可以根据这些表更改进行更改。
基本上需要知道如何将多个人分配给项目,以后可以在不同的页面或不同的查询中调用。
对于n00bish的问题感到抱歉,但谢谢!
答案 0 :(得分:11)
不要在一列中存储多个ID!使用现有表的主键和要存储的单个ID创建另一个表。然后,您可以在此新表中插入多行,从而创建1:m(一对多)关系。例如,让我们看一下订单表:
order:
order_id
order_date
我有一张产品表...
product:
product_id
product_name
现在,您可以按照订单添加列的方式,让您列出订单中的产品,但这样做会很糟糕。你想要的是...... .. / / p>
order_item:
order_item_id
order_id
product_id
quantity
unit_price
然后,您可以执行联接以获取特定订单的所有产品......
select
product.*
from orders
inner join order_item on order_item.order_id = order.order_id
inner join product on product.product_id = order_item.product_id
where orders.order_id = 5
这是一个示例order_id为5,这将按顺序获得所有产品。
答案 1 :(得分:3)
您需要创建另一个存储这些值的表,例如。因此,这个新表将为每个ID存储一行,然后使用原始记录ID链接回原始记录。