这样看不出错在那儿,你把:
exec @sql改成:
print @sql
然后把语句拿出来执行,就知道错在那儿了。

解决方案 »

  1.   

    谢谢楼上的回答,但是按照你那种方法还是出现同样的错误我想是输入的那条sql语句出错了!!我换了另外一个简单的sql 语句进去
    就没有错误,单独执行那条语句也没有错误就是放进去存储过程中执行就出错了,不知道什么回事??是不是sql语句太长了??
      

  2.   

    你定义了8000,print出来完整吗?
    不完整可能是超长了。分几个变量存储试试。exec @sql1+@sql2+@sql3.....
      

  3.   

    引号错误吧?
    insert 语句里的单引号与存储过程参数的引号混一起了
      

  4.   

    把exec改为print的出错结果也是一样的,存储过程根本就还没有执行,我想!!
      

  5.   

    对了,你传递的参数sql必须将里面的每个单引号换成2个
      

  6.   

    to:楼上,出现的错误!!
    名称 'INSERT INTO ORDERTOPROVIDER (OrderToID,PCode,MCode,PLinkMan,PPhone,PFax,Buyer,BLinkMan,BPhone,BFax,MLinkMan,MPhone,MFax,State,BookDate,Creater,CreateTime,Re,Manager,StatisticsID) Values ("OD2003128-480","PRD002","M0002","克林顿","02036987456","","asfd","asfd","asfd","asfd","恒城(香港)有限责任公司","023145687","211552356","N","2003-9-9 0:00:00","","2003-12-8 13:44:01","asdf ","","OL200311-12") ' 不是有...什么意思??
      

  7.   

    exec InsertToOrderToProvider 'OL200311 - 12',
    'INSERT INTO ORDERTOPROVIDER (OrderToID,PCode,MCode,PLinkMan,PPhone,PFax,Buyer,BLinkMan,BPhone,BFax,MLinkMan,MPhone,MFax,State,BookDate,Creater,CreateTime,Re,Manager,StatisticsID) 
    Values (''OD2003128-606'',''PRD002'',''M0002'',''克林顿'',''02036987456'','''',''adsf'',''asdf'',''asdf'',''asdf'',''恒城(香港)有限责任公司'',''023145687'',''211552356'',''N'',''2003-9-9 0:00:00'','''',''2003-12-8 13:04:38'',''asdfasdf'','''',''OL200311 - 12'') '
      

  8.   

    tailzhou(尾巴)  尾吧说得对!把单引号换成两个单引号