在DELPHI中连续录入N个记录(ado+sqlserver+delphi7),,之后对这些记录进行查找(查看在另一个表中有没有这些记录的存在),如果没有就一次将这些记录插入另一个表中,用什么方法比较好,谢谢各位的回答!!!

解决方案 »

  1.   

    保存前先查询另一个表的数据出来对比,不重复则插入.写SQL语句好点
      

  2.   

    我的问题是在DELPHI里面用什么比较好,DBGRID,还是用一个MEMO之类的来录进这些数据
      

  3.   

    如果是一批记录,我会用DBGRID,但不直接关联到数据库的表,而会用临时表(内存表,ODAC的VirtualTable控件,你也可用TClientDataSet控件或其它第三方内存表控件)
    当提交时,再将临时表与最终表数据比较并插入
      

  4.   

    在MSSQL中建立一个空表(不需要数据),然后使用DBGRID对其进行输入数据。提交保存后,调用一个过程这个过程只需要执行一个SQL语句CREATE PROC dbo.usp_InserMyData
    AS
     INSERT ddd (F1,F2,F3....) SELECT F1,F2,F3... FROM TMPDDD WHERE 
     KEYF NOT IN (SELECT KEYF FROM ddd)
     DELETE TMPDDD
    GO