先看一下你的PO里面是否包含了非数字类型比如ABC之类的,用ISNUMERIC.http://technet.microsoft.com/zh-cn/library/ms186272.aspx

解决方案 »

  1.   

    select ISNUMERIC(po) from dbo.invoice  看有没有不等于1的。
      

  2.   

    select * from dbo.invoice where ISNUMERIC(po)<>1这么查。。
      

  3.   


    有些ID下面没有PO值这个应该不是问题,关键是你的po里可能会有不是数字的字符。
      

  4.   


    有些ID下面没有PO值这个应该不是问题,关键是你的po里可能会有不是数字的字符。这个敢保证要么为null,要么就是全数字,公司数据库用了4年了,以前下载下来的PO值还没发现过不是纯数字的,PO值也是通过人为输入然后用EXCEL宏存进数据库的.现在报这个错误毫无头绪啊
      

  5.   


    有些ID下面没有PO值这个应该不是问题,关键是你的po里可能会有不是数字的字符。这个敢保证要么为null,要么就是全数字,公司数据库用了4年了,以前下载下来的PO值还没发现过不是纯数字的,PO值也是通过人为输入然后用EXCEL宏存进数据库的.现在报这个错误毫无头绪啊
    what is the error message you encontered ?
      

  6.   


    有些ID下面没有PO值这个应该不是问题,关键是你的po里可能会有不是数字的字符。这个敢保证要么为null,要么就是全数字,公司数据库用了4年了,以前下载下来的PO值还没发现过不是纯数字的,PO值也是通过人为输入然后用EXCEL宏存进数据库的.现在报这个错误毫无头绪啊
    what is the error message you encontered ?从数据类型varchar转换为bigint时出错
      

  7.   


    这句SQL是以前公司的人写的,当时这里没报错,这句SQL语句之前有VBA语法错误,我把VBA语法改正确后就出现这个错误了.
    大神支个招嘛