C# Linq筛选datatable后adapt.update的问题

问题描述

DataTabledt=newDataTable();DataTabledtnew=dt_OD_BAS.Clone();IEnumerable<DataRow>rows=fromdt1indt_OD_BAS.AsEnumerable()selectdt1;foreach(DataRowdrinrows){dtnew.ImportRow(dr);}intidtrows=rows.Count();if(idtrows==0){dt.Clear();}else{dt=rows.CopyToDataTable<DataRow>();}

原表是dt_OD_BAS,通过linq筛选得到rows(where条件略掉了,就当是全选了吧),通过2种方法得到dt和dtnew表,通过可视化工具看到原表和dt和dtnew是一样的,然后通过下面的语句更新到数据库。stringstrSql="SELECT*FROM"+GlobalCache.table_OD_BAS+"WHERE1=0";SqlDataAdapteradapter=newSqlDataAdapter(strSql,sqlCon);SqlCommandBuilderbuilder=newSqlCommandBuilder(adapter);adapter.Update(dt);adapter.Update(dtnew);adapter.Update(dt_OD_BAS);

结果是只有adapter.Update(dtnew);和adapter.Update(dt_OD_BAS);这两句能更新到SQLServer里。为什么呢?

时间: 2024-12-03 23:39:06

C# Linq筛选datatable后adapt.update的问题的相关文章

select-c#中用linq查询datatable的问题

问题描述 c#中用linq查询datatable的问题 之前用datetable的select方法来查询,发现这个方法非常诡异,有时候会查询到一些不对的结果.所以就想换过用linq来查.但用了一会出现了一个问题.就是我希望以数据表中的一个以时间格式的字段(如:2014-9-17 23:59:17)进行查询时,用Field转换这个字段的数据发现转换不了,系统报错了..请问应该怎么解救这个问题啊? 解决方案 .Cast().Where(x => DateTime.Parse(x["字段&quo

DataSet.AcceptChanges()后 SqlDataAdapter.Update(DataSet)时数据无法更新数据库 希望路过高人指点 谢谢了

问题描述 DataSet.AcceptChanges()后SqlDataAdapter.Update(DataSet)时数据无法更新数据库希望路过高人指点谢谢了 解决方案 解决方案二:自己顶解决方案三:有没异常出现?解决方案四:或是DataSet.HasChanges=false?解决方案五:没有任何异常解决方案六:我是你下面的并发冲突的贴,还没解决,头痛.DataSet.AcceptChanges()好像放在update的后面.解决方案七:放在update后面就起不到作用了我是GridView

通过ado.net查询出来的数据保存到datatable后,数据类型变了,如何破?

问题描述 使用ddtek.oracle,就是普通的从oracle数据库中提取数据,oracle中的数据类型都是整形,sql语句也是普通的加减乘除,但是最后保存到datatable中,有些数据类型变成了string类型,或者应该整形的却变成了浮点型,这是为什么?有人碰到过吗? 解决方案 解决方案二:这可能跟查询语句有关,但是我用sum(x)/sum(y),x和y都是整形,这样最后出来的数据类型是string类型,这让人没有办法接受啊.之所以纠结数据类型的问题,是因为后续还需要用datatable中

邮箱用了筛选功能后大部分邮件不见了该怎么办?

  启用了筛选功能,Outlook收件箱中的大部分邮件不见了 1.一用户打开outlook收件箱发现除了本周内的邮件可见,大部分的邮件不见了. 2.通过与用户沟通,排除用户自己删除的可能,查看该数据文件PST的容量有1G多,但可见部分的邮件大小显然达不到这个数据. 3.由此怀疑大部分邮件被隐藏了,通过查找该收件箱的属性,在视图->当前视图->自定义当前视图中有一项筛选的功能, 4.在筛选中选择了接收时间为最近7天,因此收件箱中只显示了最近一周内所收到的邮件. 5.把上述时间选项中选择无后,被隐

C# 用Linq实现DataTable实现重复数据过滤

未过滤前: 过滤后(仅会过滤掉完全一样的数据): 代码如下: DataTable dt = this.JsonToDataTable("[{\"Code\":\"SortId\",\"Name\":\"SortId\"},{\"Code\":\"SortCode\",\"Name\":\"编号\"},{\"Code\"

xml文件转换成datatable后操作数据,然后把datatable的数据保存到xml文件里,xml文件的表头没有了

问题描述 RT数据结构和数据保存在xml文件里xml文件转换成datatable进行数据操作,新建了一条数据后再把datatable里的数据保存到xml文件里,xml文件表结构没有了,只剩下数据了,求大神讲解该怎么解决这个问题.代码如下:stringfilePath="D:\PrintCard"+"\printCard"+"\bin"+"\Debug"+"\data"+"\sys_right_us

请教datagridview绑定了datatable后,如何设置某一列为checkbox类型

问题描述 我在一个窗体里拖了一个datagridview控件,然后用一个datatable与其绑定datatable第一列形如绑定语句如:DataGridView1.DataSource=DataTable1在本机上调试时第一列可以自动变为checkbox类型但程序打包安装在另外一台机器上第一列不是checkbox单元格类型,而是空白,不知道为何?在绑定语句后设置DataGridView绑定后第一列类型为checkbox不成功,提示item属性为readonly语句为DataGridView1.

excel2016用函数自动筛选结果后如何计数

  1.打开excel2016表格,在一个空白单元格输入计数函数"=subtotal(3,A2:A1000)", 2.其中A2:A1000中的A可以是进入筛选的任意一列, 3.公式中的3是引用的Counta--即统计非空单元格的数据,所以后面的区域只能选择整个数据区域,不要将标题行也选中.3其实前面是有10的,也就是103,但是这个10可以省略.

win10关闭SmartScreen筛选器之后下载文件还是提示被阻止的解决方案

1.关闭smartscreen 之后下载文件还是被阻止,如下图所示:     2.我们可以Ctrl+J 或者点击IE浏览器上面的小齿轮点击查看下载:     3.点击查看下载,出现下图所示:     4.现在点击鼠标右键查看会出现如下图菜单,现在我们点击下载不安全的文件.     5.现在下载状态是会继续下载:     6.等待文件下载完成之后提示如下图所示:     现在要提示用户注意文件的风险,然后按如下图所示右键点击运行即可.