问题是这样的:有一nickName字段为nvarchar型,其中有一条记录是“屮乜丰炯

解决方案 »

  1.   

    用复制的方式替换 如:
    replace(NickName,nchar(...),'')--这样用
      

  2.   

    [code=SQL]declare @s nvarchar(10)
    set @s=N'屮乜丰炯
      

  3.   

    [Quote=引用 2 楼 roy_88 的回复:]
    SQL codedeclare @s nvarchar(10)
    set @s=N'屮乜丰炯
      

  4.   

    [Quote=引用 2 楼 roy_88 的回复:]
    SQL codedeclare @s nvarchar(10)
    set @s=N'屮乜丰炯
      

  5.   

    [Quote=引用 5 楼 feiyingnet 的回复:]
    引用 2 楼 roy_88 的回复:
    SQL codedeclare @s nvarchar(10)
    set @s=N'屮乜丰炯
      

  6.   

    create table #t(col nvarchar(30))
    insert into #t values(N'测试
      

  7.   

    本帖最后由 roy_88 于 2011-11-13 10:03:18 编辑
      

  8.   

    [code=SQL]select unicode(substring(N'测试
      

  9.   

    create table #t(col nvarchar(30))
    insert into #t values(N'测试
      

  10.   

    [Quote=引用 11 楼 yesyesyes 的回复:]
    create table #t(col nvarchar(30))
    insert into #t values(N'测试
      

  11.   

    也有人发现了这个问题,向MS报告了BUG,但是MS认为是正常情况。
    https://connect.microsoft.com/SQLServer/feedback/details/385082/replace-function-does-not-work-with-valid-unicode-characters-above-65500解决方法:
    [code=SQL]
    create table #t(col nvarchar(30))
    insert into #t values(N'测试