--直接用INT类型接就可以了,看看下面的例子中@a的变化
declare @a int
declare @b varchar(100)set @a = 0
set @b = '000016234344001'print @a
print @bprint '======================='set @a = @bprint @a

解决方案 »

  1.   

    declare @t nvarchar(20)
    set @t ='000016234344001'
    select cast (@t as decimal(18,0)) as t
      

  2.   

    我把字段设置为bigint型就解决了我当前的问题。但我还是想学下如何用存储过程来处理。谢谢大家了。
      

  3.   

    drop proc p_test
    go
    create proc p_test
    @p nvarchar(40)
    as
    begin
       select cast (@p as decimal(18,0)) as t 
    end
    goexec p_test '000016234344001'
    /*
    16234344001
    */
      

  4.   

    select cast('000016234344001' as bigint)
    ------------------
    16234344001
      

  5.   

    导入的时候选择用一条查询指定要传输的数据,然后写一条SQL语句进行判断.