本帖最后由 lengcj 于 2012-02-20 15:23:37 编辑

解决方案 »

  1.   

    你的INSERT 语句,怎么只有字段没有插入的值啊
      

  2.   


    INSERT INTO ClassLog ( DiQu,ZhuangTai,ShenheId,ShenheShiJian)                         
    (select DiQu,ZhuangTai,4,'2012-2-18 10:00:00'  FROM  ClassLogLuRu   WHERE    ClassLogLuRu_id =" + id + ") select DiQu,ZhuangTai,4,'2012-2-18 10:00:00'  FROM  ClassLogLuRu   不是值吗?补充 去掉select 前后的()在sql2005运行和检测都正常,就是
    Convert.ToInt32(SqlHelper.ExecuteScalar(DBConn.ConnectionString, CommandType.Text, sqlshenhe))取不到值,不能进行判断是否插入成功。谢谢
      

  3.   

    这里应该是不SQL的问题,你在其它问题上找找原因吧! 看下数据接口有没有什么问题!
      

  4.   

    这个应该不是SQL语句的问题,你看下数据接口哪里没有设对?
      

  5.   

    .
    我也怀疑是其他问题造成的哟,记得就是win2003更新重启了一次
    第二天就不行了。郁闷。找不到原因才来万能的csdn求助哟。
      

  6.   


    string sqlshenhe = @"INSERT INTO ClassLog ( DiQu,ZhuangTai,ShenheId,ShenheShiJian) select DiQu,ZhuangTai,4,'2012-2-18 10:00:00'  FROM  ClassLogLuRu   WHERE    ClassLogLuRu_id ="+id +";
    //把你的代码改成这样试试
      

  7.   

    你不会是更换数据库了吧,或者就是有约束条件没处理好,直接INSERT了
      

  8.   

    string sqlshenhe = @"INSERT INTO ClassLog ( DiQu,ZhuangTai,ShenheId,ShenheShiJian) select DiQu,ZhuangTai,4,'2012-2-18 10:00:00'  FROM  ClassLogLuRu   WHERE    ClassLogLuRu_id ="+id +";
    改成这样试试:string sqlshenhe = string.Forma("INSERT INTO ClassLog ( DiQu,ZhuangTai,ShenheId,ShenheShiJian) select DiQu,ZhuangTai,4,{0}  FROM  ClassLogLuRu   WHERE    ClassLogLuRu_id ="+id +","2012-2-18 10:00:00");
    我也出现过这种问题
    最后请教了论坛里的人,发现原因居然是字符串错误:兴许是单引号和双引号的错误
      

  9.   

    ExecuteScalar 执行查询,并返回查询所返回的结果集中第一行的第一列。 忽略其他列或行
    ExecuteNonQuery 对连接执行 Transact-SQL 语句并返回受影响的行数。
      

  10.   

    帮忙砍砍这个咋的了    //根据SQL语句生成记录集
    m_pRecordset.CreateInstance(__uuidof(Recordset));
    _variant_t RecordsAffected; 
    CString vSQL;
        vSQL.Format("SELECT * FROM 固定钻套 WHERE 孔径大于<'%f' and 孔径到>='%f'",m_DHole,m_DHole);
    m_pRecordset=m_pConnection->Execute(_bstr_t(vSQL),&RecordsAffected,adCmdText); 
    if((m_pRecordset->adoBOF)&&(m_pRecordset->adoEOF))
    {
    AfxMessageBox("没有满足条件的记录!");
    m_pRecordset->Close();
    return;
    }