如何发送不必要的项目以保存程序

本文关键字:保存 程序 项目 何发送 不必要 | 更新日期: 2023-09-27 18:35:10

我在sql server中有名为"Document"的表,在Visual Studio中有相同的类。我有一些不必要的属性不应该填写程序,其中一些是外键字段。如果用户不填写不必要的项目,它们将为 null,并且当保存过程运行时,它不能接受 null 值。(以及外键的保存错误!我应该怎么做才能修复此错误?

如何发送不必要的项目以保存程序

如果它们不是必需的,那么简单的答案是允许数据库中的这些列为 null。

alter table dbo.[document] alter column [fk_column_name] int null;

很难的答案是重新评估架构设计,因为 null 值(尤其是外键)以后可能会变成痛苦的问题。为什么我们不应该允许空值

在我看来,

您应该通过更改列以接受空值来解决此问题。

但是,如果您不想这样做,请用默认值填充它。例如,如果一个 int 在我的表中不能为 null,那么我使用"-1"作为我的默认值,我会知道每次我看到 -1 是因为它应该是 null(我强调这不是最好的方法,但它会起作用)

在您的代码上,它将是这样的:

if(myvar == null)  
{
  //your default value
  myvar = -1;
}