在数据库字符串列中持久化可空值类型的好方法

本文关键字:类型 空值 方法 持久化 数据库 字符串 | 更新日期: 2023-09-27 18:16:56

我想知道在数据库中的字符串列中持久化可空值类型的最佳方法是什么?

背景:

我的计划是在DB中有一个通用消息表,其中包含资源名称,Web使用它来查找本地化的资源字符串,以及格式化项,序列化为连接字符串:

TABLE LogMessages
(
  ResourceName NVARCHAR(50),
  FormatItems NTEXT
)

假设我在Web中有一个资源文件,包含一个资源条目"UserSetup",值"User{0}已在{1:d}上创建。"

例如,表中的条目可以是:

ResourceName: "UserSetup" ——比;引用资源的Name字段
FormatItems: "System.String;Bob|System.DateTime;2009-06-15T13:45:30.0900000"

Web将恢复数组并将其传递给string.Format(…)方法。

问题:

除了这个概念是否有意义的问题之外,我想知道NULL值(例如int?)应该如何在连接的字符串中持久化?。我可以使用null引用的关键字吗?

一个想法是使用像NULL这样的关键字,例如"System.String;NULL|System.DateTime;2009-06-15 t13:45:30 . 0.0900000"。但这可能与值实际上是字符串"NULL"的对象相冲突。

您建议如何持久化可空类型和空值?

感谢大家的建议!

在数据库字符串列中持久化可空值类型的好方法

如何尝试使用空字符串:" ?