繁体   English   中英

C#MySql在数据库中存储一个数组列表

[英]C# MySql Storing an arraylist in the database

我有一个mysql数据库,用于存储项目的详细信息。 这些细节之一是与项目相关的人员。 在项目表中,我有一列用于项目人员。 在后面的C#代码中,我将其存储在arraylist中。 我想知道有什么方法可以将arraylist存储在数据库的单个列中吗?

谢谢

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

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

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

称为many-to-many关系( N:M为简写)

来自Google的第一个与多对多相关的随机链接

通常在列中存储倍数值表明数据库设计不佳。 很难根据该列中的条件有效地选择行。 话虽如此,如果您真的只需要逐行选择这些值,则考虑使用XML

在MySQL中使用XML

我想您一定要遵循多对多的概念,就像@zerkms指出的那样。 但是,如果您真的有兴趣将ArrayList保存到单个字段中 ,则可以将此ArrayList序列化为String并存储在VARCHAR字段中

关于将ArrayList序列化为String ,您可以查看本主题中的一些建议方法: 动态创建带有c#代码的javascript数组

请记住,在回读应用程序时,也需要反序列化

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM