ssql = "insert into bk_tsrkb(isbn,bcid,bname,tszz,tszy,tsdj,cbrq,kb,bb,fbt,qtzrr,tszt,rksj,cbm,cbzrz,tsys,pubid)" _
                & "values('" & Trim(txtISBN.Text) & "','" & Trim(txtFLH.Text) & "','" & Trim(txtZBT.Text) & "'," _
                & "'" & Trim(txtDYZRZ.Text) & "','" & Trim(txtZY.Text) & "', Convert(Money, 'trim(txtDJ.Text)') ," _
                & "'" & Trim(txtYear.Text) & "-" & Trim(txtMon.Text) & "-" & "1" & "','" & Trim(txtKB.Text) & "'," _
                & "'" & Trim(txtBB.Text) & "','" & Trim(txtFBT.Text) & "','" & Trim(txtQTZRZ.Text) & "'," _
                & "'" & Trim(txtZT.Text) & "',getdate(),'" & Trim(txtCBM.Text) & "','" & Trim(txtCBZRZ.Text) & "','" & Trim(txtYS.Text) & "','" & Get_sPubid & "')"
其中 tsdj字段是MONEY型的~ 相对应的插入 Convert(Money, 'trim(txtDJ.Text)')
总是提示 无法将CHAR 转换成MONEY  语法错误~ 到底错在哪里了????
如果换成   Convert(Money, '" & trim(txtDJ.Text) & "') 
总是提示 无法将VARCHAR转换成MONEY  请使用CONVERT函数~~~求各位帮忙~~~~~~~

解决方案 »

  1.   

    跟前天问题一样
    Convert(Money, 'trim(txtDJ.Text)')---->Convert(Money,"&trim(txtDJ.Text)&")
      

  2.   

    -----try-----ssql = "insert into bk_tsrkb(isbn,bcid,bname,tszz,tszy,tsdj,cbrq,kb,bb,fbt,qtzrr,tszt,rksj,cbm,cbzrz,tsys,pubid)" _
                    & "values('" & Trim(txtISBN.Text) & "','" & Trim(txtFLH.Text) & "','" & Trim(txtZBT.Text) & "'," _
                    & "'" & Trim(txtDYZRZ.Text) & "','" & Trim(txtZY.Text) & "', Convert(Money, '"&trim(txtDJ.Text)&"') ," _
                    & "'" & Trim(txtYear.Text) & "-" & Trim(txtMon.Text) & "-" & "1" & "','" & Trim(txtKB.Text) & "'," _
                    & "'" & Trim(txtBB.Text) & "','" & Trim(txtFBT.Text) & "','" & Trim(txtQTZRZ.Text) & "'," _
                    & "'" & Trim(txtZT.Text) & "',getdate(),'" & Trim(txtCBM.Text) & "','" & Trim(txtCBZRZ.Text) & "','" & Trim(txtYS.Text) & "','" & Get_sPubid & "')"
      

  3.   

    如果还是不行,可以把sql语句print出来看看 ,很可能是你疏忽造成的。
      

  4.   

    又回来了,可以按楼上的把sql语句粘到查询分析器中,
    也可以直接Convert(Money, 'trim(txtDJ.Text)')换成12.34看报错不
      

  5.   

    zai SQL里 验证好用 可在VB里就是不行啊~ 在SQL里 这个 select convert(money,'33.33')好用~
      

  6.   

    在vb中先  直接Convert(Money, 'trim(txtDJ.Text)')换成12.34看报错不
      

  7.   

    zai SQL里验证好用 可在VB里就是不行啊~ 在SQL里 这个 select convert(money,'33.33')好用~------------------什么意思啊~~,报的是什么错误啊,vb的还是sql的阿!你新换的语句事什么啊~~
      

  8.   

    加一个文本框,让text=sql的内容,再把text内容放到查询分析器里执行,也可贴出来大家分析
      

  9.   

    ssql = "insert into bk_tsztb(bcid,tsbh,tqzt,rkrxm,bhsj,tsdj,skbh) values('" & Trim(LblFLH.Caption) & "'," _
                   & "'" & Trim(txttsbh.Text) & "','0','" & Mid(Login, 5, Len(Login)) & "',getdate(),Convert(Money, '12.34') ," _
                   & "'" & skid & "')"
    大家看一下~ 表bk_tsztb中~~tsdj是MONEY类型的~   里面的语句Convert(Money, '12.34')在vb中实现没有问题~~
    可谓什么换成 Convert(Money, trim(money,' &trim(txtDJ.text) &') 旧提示 无法将CHAR植转化为MONEY 该CHAR值语法有错误 或者Convert(Money, trim(money,'" &trim(txtDJ.text) & "')旧提示
      

  10.   

    Convert(Money, trim(money,' &trim(txtDJ.text) &') 中 &trim(txtDJ.text) &整个是一个串,并没有取得txtDJ.text的值,所以要改也是这样
    Convert(Money, trim(money,'"&trim(txtDJ.text) &"')
    不是叫你加一个控件text ,在ssql = "insert ...后加上text1.text=sql 执行会报错,但text1中有查询内容,复制出来看看
      

  11.   

    呵呵 ~谢谢大家啊~ 特别感谢~wgzaaa() 帮忙~~ 我的问题已经解决了~
      

  12.   

    怎么 给你分啊~wgzaaa()