全部博文(788)
分类: 敏捷开发
2017-07-08 09:59:40
今天下午和同事发生因为判断数据是否在数据库中已存在产生分歧.简易代码如下:
//观点一,先取出数据库中已存在ID存入内存,再进行判断 //数据太多情况,内存爆炸 DateTable dt = ExcuteSQL('SELECT ID FROM TABLE'); //List为数据集,已经去重 foreach(var item in List){ //观点二,在for循环中根据ID查询是否已存在 //for循环执行数据库?没这么干过 DateTable dt = ExcuteSQL(string.format('SELECT ID FROM TABLE WHERE ID = {0}',item.ID)); //判断是否在dt中存在 ... bool ISContain ... //不存在 if(!ISContain){ //加入事物SQL列表 SQLList.Add('INSERT INTO ........'); } } //执行事物 ....