使用 SqlDataAdapter.Update 方法时复制表行

     2023-04-12     219

关键词:

【中文标题】使用 SqlDataAdapter.Update 方法时复制表行【英文标题】:Duplicating table rows when using SqlDataAdapter.Update Method 【发布时间】:2013-11-04 03:08:40 【问题描述】:

在我的项目中,我有表格“产品”。

ID  Name   Price
------------------  
1   xyz     100

2   abc     200

3   pqr     300

在我的 c# 代码中,我想使用 SqlAdapter 更新我的表行。 为此我创建了一个数据表

DataTable dtTable=new DataTable("Product");

将更新后的值添加到 Datatable 中。即,

ID  Name   Price
    ------------------  
    1   aaa     100

    2   bbb     200

    3   ccc     300

我使用以下步骤使用此值更新数据库中的表

SqlConnection myLocalConnection = new SqlConnection(_ConnectionString);
SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter("Select * from " + dtTable.TableName, myLocalConnection);
 SqlCommandBuilder mySqlCommandBuilder = new SqlCommandBuilder(mySqlDataAdapter);

     mySqlDataAdapter.Update(dtTable);

但是当执行这个更新函数时,在数据库中所有的表都是重复的。 那就是

ID  Name   Price
------------------  
1   xyz     100

2   abc     200

3   pqr     300

4   aaa     100

5   bbb     200

6   ccc     300

我只想替换现有数据。为什么这些行在此表中重复。 请帮忙

【问题讨论】:

你需要初始化dtTable来获取新值 【参考方案1】:

根据Updating Data Sources with DataAdapters你必须自己指定你的更新命令,然后才能调用sql数据适配器的Update函数!

SqlDataAdapter mySqlDataAdapter = 
     new SqlDataAdapter("Select * from " + dtTable.TableName, myLocalConnection);
dataAdpater.UpdateCommand = new SqlCommand("UPDATE ...", connection);
mySqlDataAdapter.Update(dtTable);

【讨论】:

使用 SqlDataAdapter.Update 方法时复制表行

】使用SqlDataAdapter.Update方法时复制表行【英文标题】:DuplicatingtablerowswhenusingSqlDataAdapter.UpdateMethod【发布时间】:2013-11-0403:08:40【问题描述】:在我的项目中,我有表格“产品”。IDNamePrice------------------1xyz1002abc2003pqr300在我的c#代... 查看详情

SqlDataAdapter.Update(dataset) 方法插入新行但不更新现有行

】SqlDataAdapter.Update(dataset)方法插入新行但不更新现有行【英文标题】:SqlDataAdapter.Update(dataset)methodinsertsnewrowsbutdoesnotupdatesexistingrows【发布时间】:2014-06-0114:56:49【问题描述】:我正在创建具有DataGrigView来呈现表格的winform应用程... 查看详情

C# SqlDataAdapter.Update()

】C#SqlDataAdapter.Update()【英文标题】:【发布时间】:2010-07-1208:39:42【问题描述】:我要疯了。我做了ff:创建数据表。通过SqlDataAdapter从SQL数据库填充它。通过datagridview编辑数据表。调用sqldataadapter.update但更改不会持久化到数据... 查看详情

SqlDataAdapter.Update 未更新

】SqlDataAdapter.Update未更新【英文标题】:SqlDataAdapter.Updatenotupdating【发布时间】:2015-10-2119:34:29【问题描述】:(我应该说我对vb.net相当陌生)我在覆盖我的数据库中的条目时遇到问题。我认为问题在于SqlDataAdapter.Update没有用我... 查看详情

在 SqlDataAdapter.Update() 中获取错误消息

】在SqlDataAdapter.Update()中获取错误消息【英文标题】:GettingerrormessageinSqlDataAdapter.Update()【发布时间】:2016-07-1419:43:38【问题描述】:我有一个数据库表(在本例中为空)createtablewords(idintnotnull,wordnvarchar(50)notnull)还有一个DataGridVie... 查看详情

200万条记录的SqlDataAdapter.Update()速度极慢

】200万条记录的SqlDataAdapter.Update()速度极慢【英文标题】:SqlDataAdapter.Update()of2millionrecordsisextremelyslow【发布时间】:2019-04-3009:22:51【问题描述】:我有一个客户希望每天将他的子客户价格工具(超过2.000.000条记录)导入SQLServer数... 查看详情

当 RowState = Modified 时 SQLDataAdapter.Update() 不更新

】当RowState=Modified时SQLDataAdapter.Update()不更新【英文标题】:SQLDataAdapter.Update()notUpdatingwhenRowState=Modified【发布时间】:2018-05-1516:41:39【问题描述】:我正在尝试设置一个程序,当用户更新项目描述时,将在保存表单时更新数据库... 查看详情

SqlDataAdapter.Update(数据表)不工作(不更新数据库)

】SqlDataAdapter.Update(数据表)不工作(不更新数据库)【英文标题】:SqlDataAdapter.Update(datatable)isnotworking(notupdatingthedatabase)【发布时间】:2016-04-0516:34:30【问题描述】:我有下面的代码,我试图从Windows应用程序中所做的c#网格视... 查看详情

SqlDataAdapter.Update 直到第二次更新才写入表

】SqlDataAdapter.Update直到第二次更新才写入表【英文标题】:SqlDataAdapter.Updatenotwritingtotableuntilsecondupdate【发布时间】:2014-08-0201:15:03【问题描述】:我有一个用C#2010Express开发的程序,它的表单由一个DataGridView组成,下面有一个单... 查看详情

如果我将列值“更改”为已经存在的值,会调用 UPDATE 吗?

...需要额外的逻辑来避免对我的SQL数据库的无用调用,或者SqlDataAdapter.Update()是否会做正确的事情。如果我有这个代码:SqlCon 查看详情

Mono C# SQL 更新“并发冲突”

...:2009-07-1015:24:22【问题描述】:每次我尝试通过Mono中的SqlDataAdapter.Update()更新一行时,我都会得到:未处理的异常:System.Data.DBConcurrencyException:并发冲突:UpdateCommand影响了0条记录。 查看详情

datatable数据批量写入数据库三种方法比较

DataTable数据批量写入数据库三种方法比较标签:it 分类:C#1)  insert循环插入;2)  sqldataadapter.update(dataset,tablename);3)  sqlbulkcopy.WriteToServer(datatable);1、生成测试的datatable表,表结构如下:UniqueID(主 查看详情

酒店管理系统无法向数据库插入新的记录,提示列“入住日期”不允许为nulls,急求!!

...,"客人信息表").EndCurrentEdit()'将数据返回数据集SqlDataAdapter2.Update(Ds1,"客人信息表")'更新数据,返回数据源Ds1.Tables("客人信息表").Clear()'以下代码把选择了的房间的"状态"字段更新为"营业中&... 查看详情

c#怎样才能实现客户端通过服务器端连接数据库服务器???

...行解压缩、和反序列化为DataTable7.再将DataTable通过DataSet和SqlDataAdapter.Update(Table)存在SQL中下面我只给一些关键的代码,我有实现过的第一步.客户端==》连接服务器并通讯,主要是发送SQL给服务器返回一个DataTable表usingSystem;usingSystem... 查看详情

第一篇用于测试使用

第一篇用于测试使用第一篇用于测试使用第一篇用于测试使用第一篇用于测试使用第一篇用于测试使用第一篇用于测试使用第一篇用于测试使用第一篇用于测试使用第一篇用于测试使用第一篇用于测试使用第一篇用于测试使用第... 查看详情

使用“使用严格”作为“使用强”的备份

】使用“使用严格”作为“使用强”的备份【英文标题】:Using"usingstrict"asabackupfor"usestrong"【发布时间】:2016-06-1604:26:29【问题描述】:有没有办法使用"usestrong";并使用"usestrict";作为备份?因为Google... 查看详情

在使用加载数据流步骤的猪中,使用(使用 PigStorage)和不使用它有啥区别?

】在使用加载数据流步骤的猪中,使用(使用PigStorage)和不使用它有啥区别?【英文标题】:InpigwhileusingLoaddataflowstepwhatisdifferencewithusing(UsingPigStorage)andwithoutusingit?在使用加载数据流步骤的猪中,使用(使用PigStorage)和不使用它... 查看详情

MySQL db 在按日期排序时使用“使用位置;使用临时;使用文件排序”

】MySQLdb在按日期排序时使用“使用位置;使用临时;使用文件排序”【英文标题】:MySQLdbisusing"Usingwhere;Usingtemporary;Usingfilesort"whensortingbydate【发布时间】:2011-07-2207:56:47【问题描述】:我有一个包含一堆记录的数据库,... 查看详情