我要做一个工业控制系统的联网程序。建立一个服务器,接收客户端的数据。用CRecordset类通过ODBC连接到SOL Server2000。现遇到一个问题,服务器端建立了一个记录传感器信息的表,收到客户端的数据后根据传感器的编号来检索看数据库中有无此传感器的记录,如有就更新,如没有就加一条记录,请问如何实现?

解决方案 »

  1.   

    通过传感器的编号来检索SOL Server2000中的表记录
      

  2.   

    用一个SQL语句:
    if exists(select * from tablename where id=a)
    Update tablename set ....
    else
    insert into tablename values(...)
      

  3.   

    if exists(select * from tablename where id=a)
    begin
    Update tablename set ....
    end
    else
    begin
    insert into tablename values(...)
    end
      

  4.   

    CRecordset rs;
    rs.m_strFilter = "id = " + m_id;
    rs.Open();
    if( rs.IsEOF() )
    {
        rs.AddNew();
        ...
    }
    else
    {
        rs.Edit();
        ...
    }
    rs.Update();
    rs.Close();
      

  5.   

    CRecordset rs;
    rs.m_strFilter = "id = " + m_id;
    rs.Open();
    if( rs.IsEOF() )
    {
        // 没有找到
        rs.AddNew();
        ...
    }
    else
    {
        // 找到
        rs.MoveFirst();
        rs.Edit();
        ...
    }
    rs.Update();
    rs.Close();
      

  6.   

    用SQL SERVER 2000 的表创建一个触发器