SqlDataReader 如何确定在填充数据表时是否将列设置为只读



我正在调用dataTable.Load(sqlDataReader),其中 2 列自动设置为在 dataTable 中ReadOnly。其余列是可编辑的。我知道我可以编辑此属性,但我想知道它如何确定要ReadOnly的内容。

其中一列是表的主键,另一列是BitBit列在 SQL Server 中具有默认约束,但仅此而已。我用来调用它的查询是将列转换为INT。我想知道是否有办法可以编辑我的 SQL 查询以使列只读。

您通过指定列详细信息来回答自己的问题。

我的假设是,DataTable 的创建方式是能够更新、插入、删除行/列等。 因此,由 DataTable 以外的资源处理或计算的任何内容都可能是只读的。

所以主键列很可能是一个 IDENTITY 列,这意味着数据库分配键,这意味着你不想添加自己的值! 因此被标记为只读。

下一个可能不是因为列上有默认值。 因为从技术上讲,您不包括位列,而是包括基于位列的计算列。 因此,您包含的列实际上并不存在于基础表中,因此 .net 将无法更改列中的数据.....

相关内容

  • 没有找到相关文章

最新更新