C# 判断当前值是否存在datatable的指定列中。

首先我有一个datatable跟一个string[]数组,大小都不限制。其中datatable的第一列中有的值,可能在string[]的数组中存在。现在需要通过筛选、判断... 首先我有一个datatable 跟一个string [] 数组,大小都不限制。

其中datatable的第一列中有的值,可能在string[]的数组中存在。现在需要通过筛选、判断。
组成SQL语句,把不在string[]数组里面的行添加到数据库中。
请各位大婶帮帮好好分析分析。。。。在线等!!!
datatable ExceDT=new datatble();

string[] KK = StrKeys.ToString().Split('|');
for (int i = 0; i < ExceDT.Rows.Count; i++)
{
for (int j = 0; j < KK.Length - 1; j++)
{
if (ExceDT.Rows[i][0].ToString() != KK[j].ToString())
{
//////// 这里就始终进来执行。

}
}
}
展开
 我来答
阳光的雷咩咩
推荐于2017-11-29 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:7829万
展开全部
你上面有两个for循环,外面那个是必要的,里面那个可以去掉,改成KK.contains(ExceDT.Rows[i][0].ToString())来判断。还有你第二个for循环的写法也是错的,有一个不同你就执行了么?应该是所有都不同才会执行。
IcebeareM
2013-09-14 · TA获得超过660个赞
知道小有建树答主
回答量:1235
采纳率:0%
帮助的人:359万
展开全部
datarow[] dr = ExceDT.select("列名 not in (1.2.3.4.5.6.7.8。。。。。)");

这样可以把行取出来,你试试看!去除了行剩下的操作就不要说了吧!
追问
我试过了,用datarow[] 很麻烦,而且得出来的也不好整理,
所以我才使用一个集合跟一个table。这样出来的数据好整理!
麻烦你看看还有什么好使的招吗??
追答
最后是要把筛选的datatable存进数据库吗!?
你可以新建一个datatable,把datarow[] 丢进去啊,在用批量更新吧datatable丢进数据库里!这样我觉得是最快的!
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
weibohai
2013-09-14 · 超过14用户采纳过TA的回答
知道答主
回答量:63
采纳率:0%
帮助的人:43.9万
展开全部
datatable有取字段的属性,直接对比一下就ok了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kuaitoukid
2013-09-14 · TA获得超过580个赞
知道答主
回答量:69
采纳率:0%
帮助的人:43.3万
展开全部
for循环写一个呗。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式