【问题标题】:datagrid checkbox writes Null instead of 0 (false) into databasedatagrid 复选框将 Null 而不是 0 (false) 写入数据库
【发布时间】:2013-06-11 10:00:13
【问题描述】:

我的 sql 数据库中有一个表,其中包含以下字段:Name(string)、Quartal1(bit)、Quartal2(bit)、Quartal3(bit)、Quartal4(bit)。

我将该表绑定到数据网格(Visual Studio 中的 Winform)。我为每个 Quartal 设置了一个复选框,并将数据集保存到我的数据库中。它实际上工作它写入一个 1 用于检查到我的数据库中,但它写入一个 NULL 而不是 0(表示错误)到我的数据库中以进行未检查。我试图将“FalseValue”和“TrueValue”属性更改为“FALSE”和“TRUE”或“0”和“1”,但它没有帮助。我还将字段属性“NULLS ALLOWED”更改为“NULLS NOT ALLOWED”,但这也没有帮助。因为我需要一个 0 来表示未检查,所以我需要你的帮助来完成它。

【问题讨论】:

  • 更改数据库表以停止初学者也可以使用 NULL
  • 因为我用拖放操作完成了所有操作,所以我没有代码。我将默认值更改为“false”,当 vstudio 尝试将值写入数据库时​​,它给了我错误:“无法将值 NULL 插入 q2 列,表 XXX;列不允许空值。插入失败。”这意味着 Visual Studio 不使用默认值并将未选中的复选框设置为 NULL 并尝试将其写入不允许空值的数据库中。如何强制 Visual Studio 使用其默认值?

标签: sql-server vb.net visual-studio


【解决方案1】:

好的,没用。有帮助的是我创建了一个新数据集并使用了设计器视图。在这里,您可以将默认值(默认值类似于 )设置为我需要的值(在本例中为 0)。现在它将值写入数据库。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-06-09
    • 2021-10-06
    • 2015-08-22
    • 2015-07-19
    • 1970-01-01
    • 2017-02-04
    • 2013-08-21
    • 2022-06-13
    相关资源
    最近更新 更多