发布网友 发布时间:2022-04-22 00:43
共3个回答
懂视网 时间:2022-05-02 07:13
今天下午和同事发生因为判断数据是否在数据库中已存在产生分歧.简易代码如下:
//观点一,先取出数据库中已存在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 ........‘);
}
}
//执行事物
....
判断数据在数据库中是否已存在.
标签:html foreach date http 数据集 sel each 描述 ...
热心网友 时间:2022-05-02 04:21
通常每张表都有一个主码,例如表t的主码为id,则在插入之前可以先做如下查询:热心网友 时间:2022-05-02 05:39
待插入数据和表中已有数据全部一样,选其中一个唯一字段(就是只有这条数据有别的数据没有)作为搜索条件,如果有值,说明表中已存在。如果为空,说明未存在,未存在继续插入