gpt4 book ai didi

c# - 可以使用 XML 列来存储额外的数据吗?

转载 作者:数据小太阳 更新时间:2023-10-29 02:49:32 26 4
gpt4 key购买 nike

如果可以并建议使用 xml 列来存储用户界面可能提供的任何额外数据?

例如,假设有一张Employee表

CREATE TABLE Employee
(
EmployeeId int not null,
Name nvarchar(300) not null,
Phone varchar(30) null,
Email varchar(320) null,
Address nvarchar(max) null,
Data xml null
)

Data 可以包含许多值,例如附加电话号码、评论......

我们希望我们所有的客户都会在 Employee 中询问不同的字段,我们不想每次他们想到要添加新字段时都弄乱数据库结构。

我们期望xml列中存储的数据是不常访问的数据。除了在浏览员工列表时可见之外,数据可能还需要打印出来。所以我们确实需要将数据类型与数据一起存储(有点像数据集正在序列化其数据)

这是存储未知额外数据的好方法吗?

已编辑举个更好的例子

更新我还没有选择答案,因为我正在与我的团队讨论你们建议的不同方法。

最佳答案

你可以这样做:

[EmployeeField]
-----------------------------------------------------
EmployeeID EmployeeFieldName EmployeeFieldValue

这实际上与 .NET Membership 用于具有动态字段的用户配置文件的方法相同。许多业务应用程序使用相同的方法来存储动态的客户特定输入。

根据 Spencer Ruport 的评论,这种方法被称为 Entity-Attribute-Value model (EAV) .

关于c# - 可以使用 XML 列来存储额外的数据吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1374317/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com