C#MySql在数据库中存储一个arraylist

时间:2011-05-07 11:17:30

标签: c# mysql arraylist

我有一个mysql数据库,我在其中存储项目的详细信息。其中一个细节是与项目相关的员工。在项目表中,我有一个项目人员专栏。在我的c#代码背后,我将它存储在arraylist中。我想知道有没有办法将该arraylist存储在数据库的单个列中?

由于

3 个答案:

答案 0 :(得分:1)

您不应将一堆实体存储在一列中。

您最好创建另一个表,并通过关系表将第一个表与第二个表链接起来。

TableA: id | name
TableB: id | bla
TableRelations: tableA_id | tableB_id

它被称为many-to-many关系(N:M作为速记)

First random link from google related to many-to-many

答案 1 :(得分:0)

通常在列中存储多个值表示数据库设计不佳。这使得根据该单个列中的条件有效地选择行非常困难。话虽如此,如果您真的只需要按行选择这些值,那么请考虑使用XML

Using XML with MySQL

答案 2 :(得分:0)

我认为你应该遵循多对多的概念,就像@zerkms指出的那样。但是,如果您真的有兴趣将ArrayList保存到单个字段,则可以将此ArrayList序列化为String并存储在{{} 1}}字段

关于将ArrayList序列化为字符串,您可以在此主题中查看一些建议的方法:Dynamically create javascript array with c# code behind

请记住,在阅读应用程序时,您还需要反序列化