关于DataAdapter的update方法错误现象的解释
2010-07-30 15:23
393 查看
要用自动生成命令更新数据库,我知道的有三点需要注意:
1、必须是单表,也就是说不能和别的表有关联
2、表中必须有主键。
3、表中字段不能为TEXT(备注)类型
在DataAdapter中使用update方法出现下列图示的错误信息 通过查找帮助文档对错误进行分析。出现如此情况解决的方法:第一种,如果你的DATATABLE是这个数据库中的一张表,那么估计你没有对数据库中的这张表设置主键约束,你最好修改你的数据库中的表,增加一个主键约束,也就是添加主键。第二种,如果 SelectCommand 返回 OUTER JOIN 的结果,则 DataAdapter 不会为生成的 DataTable 设置 PrimaryKey 值。您必须自己定义 PrimaryKey 以确保正确解析重复行。定义的方法如下
workTable.PrimaryKey = new DataColumn[] {workTable.Columns["CustLName"],
workTable.Columns["CustFName"]};
// Or
DataColumn[] keyColumn = new DataColumn[2];
keyColumn[0] = workTable.Columns["CustLName"];
keyColumn[1] = workTable.Columns["CustFName"];
workTable.PrimaryKey = keyColumn;
1、必须是单表,也就是说不能和别的表有关联
2、表中必须有主键。
3、表中字段不能为TEXT(备注)类型
在DataAdapter中使用update方法出现下列图示的错误信息 通过查找帮助文档对错误进行分析。出现如此情况解决的方法:第一种,如果你的DATATABLE是这个数据库中的一张表,那么估计你没有对数据库中的这张表设置主键约束,你最好修改你的数据库中的表,增加一个主键约束,也就是添加主键。第二种,如果 SelectCommand 返回 OUTER JOIN 的结果,则 DataAdapter 不会为生成的 DataTable 设置 PrimaryKey 值。您必须自己定义 PrimaryKey 以确保正确解析重复行。定义的方法如下
workTable.PrimaryKey = new DataColumn[] {workTable.Columns["CustLName"],
workTable.Columns["CustFName"]};
// Or
DataColumn[] keyColumn = new DataColumn[2];
keyColumn[0] = workTable.Columns["CustLName"];
keyColumn[1] = workTable.Columns["CustFName"];
workTable.PrimaryKey = keyColumn;
相关文章推荐
- DOT NET中关于DataAdapter 的update方法错误现象的解释
- 关于"update语句的语法错误"的解决方法
- 关于php中header()、setcookie()、session_start()函数错误的解决方法和解释
- 关于php中header()、setcookie()、session_start()函数错误的解决方法和解释
- 二 关于s5p4418 无线wifi模块出现SDIO读写错误的解决方法
- 关于Provider (0x80004005)错误'80004005' 未指定的错误的解决方法
- ubuntu 使用sudo apt-get update 出现 被配置多次导致无法升级错误解决方法
- OleDbDataAdapter 的Update语句执行时提示“insert into语法错误”解决方法
- 关于MySQL 1067错误的解决方法
- mysql中错误:1093-You can’t specify target table for update in FROM clause的解决方法
- 关于swift中出现 use of undeclared type ***错误的一种解决方法
- 关于使用FusionCharts生成图表时出现invalid xml data错误提示的解决方法
- 关于在使用rowid和rownum时遇到ORA-01446错误的原因即解决方法。
- 关于ListView的适配器中的getView方法调用多少次的现象探究,很诡异的!!!!
- apt-get update出现NO_PUBKEY错误的解决方法
- 关于 WPF浏览器程序报Security错误的解决方法的细究
- 关于错误“Cannot connect to the Citrix MetaFrame server.Can't assign requested address”的解决方法
- 关于js在ie6中运行错误,在其他浏览器运行正常的解决方法
- 关于错误 HRESULT: 0x80131515 解决方法
- DataAdapter对象的Update方法批量更新(UpdateCommand)