ACCESS的数据表   字段: ID   NAME AGE STATUS    (数据库中有几十上百条这样的数据 )
源数据(TXT或EXCEL):  aaa  bbb
                                                  aaa  bbb
                                                  aaa  bbb
                                                  aaa  bbb           (aaa 对应  NAME,  bbb对应AGE, 数据数量不限)问题:1.数据库中的数据在 源数据中 不存在就删除
            2.源数据中的数据在数据库中  不存在就增加一条数据
这个能用 SQL语句 实现吗??  还是把数据库的数据和 源数据都放进数组,然后对数组操作得到需要的结果数组,再删除表的所有数据,然后插入结果数组的数据?
 

解决方案 »

  1.   

    这个能用 SQL语句 实现吗??  还是把数据库的数据和 源数据都放进数组?
    答:都可以。不同的方法而已
    然后对数组操作得到需要的结果数组,再删除表的所有数据,然后插入结果数组的数据?
    答:删除所有数据,这个是很差的做法,一般来说新手才会这么做。正常的做法是有条件的删除1、提取所有excel数据,将关键列建成数组
    2、插入:循环excel列表,sql判断数据库中是否存在,不存在则插入
    3、删除:用SQL的 not in 数组 可判断数据库多余的记录,删除
      

  2.   

    删除的SQL 能给点具体代码吗? SQL对二维数组的操作好陌生
    现在我把 TXT的文本装入 一个二维数组  string[,] a = new string[x,3]了
    数据库中NAME AGE两个字段 在  数组a分别匹配a[0,0]和a[0,1]  ,  如果 找不到就删除数据库中的这条记录,这句NOT IN 怎么把数组的维数加进去?谢谢了哈
      

  3.   

    大招:merge
      

  4.   

    drop table