1

我正在GridControl使用 VB.NET 将 a 绑定到数据库。

在中插入数据时gridcontrol,我想验证已插入的内容,主要与可能不允许的空值有关:如果数据库中的列不接受空值,如果网格控件中的值是,则引发异常空值。

我正在尝试使其动态化,因此我使用AllowDBNull中的属性DataTable来检查是否允许空值,但它似乎没有反映数据库中的内容。某些列在数据库中不允许空值,但在 VB.NET 端,AllowDBNull被标记为 true。

我正在使用一种解决方法,它正在运行 Oracle 查询来获取有关我感兴趣的列的信息,但这是一个非常繁重的解决方法。

SELECT COLUMN_NAME, NULLABLE FROM ALL_TAB_COLUMNS WHERE OWNER = 'TABLEOWNER' AND TABLE_NAME = 'TABLENAME';

这是我得到的预览https://www.dropbox.com/s/vxzqqjhoheyqm13/2013-10-27%2016h57_50.mp4

AllowDBNull我应该看看正确的财产吗?

谢谢你。

4

1 回答 1

1

我认为我们需要显式调用 FillSchema 方法来反映正确的设置。从:

http://social.msdn.microsoft.com/Forums/en-US/a64ba847-97b5-44fe-9b63-6fdfd75fbbe4/why-the-property-allowdbnull-of-the-datacolumn-is-always-true

于 2013-10-27T16:45:50.423 回答