tdx = CInt(txtdx.Text)
  tws = CInt(txtws.Text)
  tgjj = CInt(txtgjj.Text)
  tjj = CInt(txtjj.Text)
  tft = CInt(txtft.Text)
  tsb = CInt(txtqt4.Text)
  tyl = CInt(txtyl.Text)
  tylbx = CInt(txtylbx.Text)
  tsybx = CInt(txtsybx.Text)
  tsy = CInt(txtsy.Text)
  tgs = CInt(txtgs.Text)
  tqt2 = CInt(txtqt42.Text)
  tsds = CInt(txtsds.Text)
  tsfgz = CInt(txtsfgz.Text)
  
  SqlStmt = " insert into GZ(bm,bh,xm,fftime,dx) values ('" + Trim(cmbbm4.Text) + "','" + Trim(txtbh.Text) + "','" + Trim(txtname4.Text) + "','" + Trim(txtfftime.Text) + "',tdx,tws , tgjj , tjj , tft ,tsb ,tqt1, tyl, tylbx, tsybx ,tsy, tgs, tqt2 , tsds , tsfgz)"
这个SQL语句怎么总是在 tdx出提示“此出只允许使用常量、变量或者表达式,不允许使用列名”这个错误呢?
我用的是SQLSEVER,tdx和列名也不一样啊?整型数据该怎么插入啊?

解决方案 »

  1.   

    你先把SqlStmt输出看看自己认识不?
    前面bm,bh,xm,fftime,dx五个字段
    后面怎么这样多值呢?
    你先在查询分析器里把SQL调试好后在来组织这个字符串
    还有问题可以把你的调试成功的SQL贴出来,大家帮你组织这段代码
      

  2.   

    GZ(bm,bh,xm,fftime,dx) values (这里只能有5个),数值不需要界定符"'"
      

  3.   

    谢谢,不好意思,那是我调试的时候弄的。SqlStmt="insert into  values ('" + Trim(cmbbm4.Text) + "','" + Trim(txtbh.Text) + "','" + Trim(txtname4.Text) + "','" + Trim(txtfftime.Text) + "',tdx,tws , tgjj , tjj , tft ,tsb ,tqt1, tyl, tylbx, tsybx ,tsy, tgs, tqt2 , tsds , tsfgz)"
    这样所有的字段都有值也不行。该成这样,先弄五个字段试了一下也不行。问题的关键是包含整型数据的SQL语句该怎样写?
      

  4.   

    Insert Into Temp
    Values('文字', 1234, 12.34)正常的SQL是这样的
    那你就生成这样的字符串就成了SqlStmt="insert into  values ('" + Trim(cmbbm4.Text) + "','" + Trim(txtbh.Text) + "','" + Trim(txtname4.Text) + "','" + Trim(txtfftime.Text) + "'," + tdx + "," + tws + "," + tgjj + "," + tjj + "," + tft + "," +tsb + "," +tqt1+ "," + tyl+ "," + tylbx+ "," + tsybx + "," +tsy+ "," + tgs+ "," + tqt2 + "," + tsds + "," + tsfgz + ")"不过这样语句看起来不直观
    建议你使用String.Format
    具体看看MSDN
      

  5.   

    SqlStmt="insert into GZ values ('" + Trim(cmbbm4.Text) + "','" + Trim(txtbh.Text) + "','" + Trim(txtname4.Text) + "','" + Trim(txtfftime.Text) + "'," + tdx + "," + tws + "," + tgjj + "," + tjj + "," + tft + "," +tsb + "," +tqt1+ "," + tyl+ "," + tylbx+ "," + tsybx + "," +tsy+ "," + tgs+ "," + tqt2 + "," + tsds + "," + tsfgz + ")"
    这样写肯定不对了,tdx是整型数据,加上,“”不成字符型了吗?我试了,这样提示类型不匹配。