用命令生成器CommandBuilder会产生以下几点副作用:
1.默认情况下,UpdateCommand工作时不锁定要编辑的记录。
如果UpddateCommand存在,且行的原始版本中的所有数据都还在数据库中而没有修改,那么它就只能更新与这相匹配的记录。如果基础数据已发生变化,就会抛出DBConcrrencyException异常.
2.如果您先作用命令创建器,然后修改SelectCommand的CommandText,就可能遇到一些异常情况。
这是因为创建Command集时,DataAdapter知道一个模式。而现在DataAdapter有一个新的并且可能是不同的模式,在试图理解基本数据时就可能引发问题。
3.表和列名称中包含有特殊字符,即使这些字符是在括号中也会产生CommandBuilder问题。
4.源DataTable没有在DataSet中定义关系。
1.默认情况下,UpdateCommand工作时不锁定要编辑的记录。
如果UpddateCommand存在,且行的原始版本中的所有数据都还在数据库中而没有修改,那么它就只能更新与这相匹配的记录。如果基础数据已发生变化,就会抛出DBConcrrencyException异常.
2.如果您先作用命令创建器,然后修改SelectCommand的CommandText,就可能遇到一些异常情况。
这是因为创建Command集时,DataAdapter知道一个模式。而现在DataAdapter有一个新的并且可能是不同的模式,在试图理解基本数据时就可能引发问题。
3.表和列名称中包含有特殊字符,即使这些字符是在括号中也会产生CommandBuilder问题。
4.源DataTable没有在DataSet中定义关系。
使用CommandBuilder时应注意四大问题:不锁定记录导致并发异常;修改SelectCommand可能导致DataAdapter混乱;特殊字符干扰命令构建;未定义关系的DataTable引起的问题。
2813

被折叠的 条评论
为什么被折叠?



