我有一表t1字段c1类型为Nvarchar,发现里面有其它字符,但是我看不见,比如 c1里有一行内容为'太阳',但是用len(c1)发现结果是3而不是2,请问我如何找出这个未知字符,并把它替换掉.数据量很多 谢谢.

解决方案 »

  1.   

    where charindex(' ',rtim(ltrim(c1)))>0 --空格
    where charindex(' ',rtim(ltrim(c1)))>0 --tab 
      

  2.   

    用ASCII(STUFF(C1,1,2,''))查看多出的那一个字符的ASCII码值
      

  3.   

    各位大侠,我通过SELECT ASCII(SUBSTRING(c1,3,1)) FROM t1 WHERE id = 11 得到的结果是 0
    但是我用
    SELECT LEN(c1) FROM 
    (SELECT RTRIM(LTRIM(REPLACE(c1,CHAR(0),''))) AS c1  FROM t1 WHERE id = 11) AS o
    替换后发现结果还是3也就是替换不了
      

  4.   

    --try 看是不是回车换行
    SELECT LEN(c1) FROM 
    (SELECT replace(REPLACE(c1,CHAR(10),''),char(13),'') AS c1  FROM t1 WHERE id = 11) AS o
      

  5.   

    SELECT CAST(c1 AS varbinary(max))
    看结果是什么。
      

  6.   

    select patindex('%[0-9a-zA-Z]%',col),stuff(col,patindex('%[0-9a-zA-Z]%',col),1,'')
      

  7.   

    create table tb(i int,col nvarchar(2))
    insert into tb select number,char(number) from master..spt_values where type='p' and number<=255
    go
    select * from tb
    go
    drop table tb
    /*
    i           col
    ----------- ----
    0            
    1           
    2           
    3           
    4           
    5           
    6           
    7           
    8           
    9           
    10          11          
    12          
    13          14          
    15          
    16          
    17          
    18          
    19          
    20          
    21          
    22          
    23          
    24          
    25          
    26          
    27          
    28          
    29          
    30          
    31          
    32           
    33          !
    34          "
    35          #
    36          $
    37          %
    38          &
    39          '
    40          (
    41          )
    42          *
    43          +
    44          ,
    45          -
    46          .
    47          /
    48          0
    49          1
    50          2
    51          3
    52          4
    53          5
    54          6
    55          7
    56          8
    57          9
    58          :
    59          ;
    60          <
    61          =
    62          >
    63          ?
    64          @
    65          A
    66          B
    67          C
    68          D
    69          E
    70          F
    71          G
    72          H
    73          I
    74          J
    75          K
    76          L
    77          M
    78          N
    79          O
    80          P
    81          Q
    82          R
    83          S
    84          T
    85          U
    86          V
    87          W
    88          X
    89          Y
    90          Z
    91          [
    92          \
    93          ]
    94          ^
    95          _
    96          `
    97          a
    98          b
    99          c
    100         d
    101         e
    102         f
    103         g
    104         h
    105         i
    106         j
    107         k
    108         l
    109         m
    110         n
    111         o
    112         p
    113         q
    114         r
    115         s
    116         t
    117         u
    118         v
    119         w
    120         x
    121         y
    122         z
    123         {
    124         |
    125         }
    126         ~
    127         
    128         €
    129          
    130          
    131          
    132          
    133          
    134          
    135          
    136          
    137          
    138          
    139          
    140          
    141          
    142          
    143          
    144          
    145          
    146          
    147          
    148          
    149          
    150          
    151          
    152          
    153          
    154          
    155          
    156          
    157          
    158          
    159          
    160          
    161          
    162          
    163          
    164          
    165          
    166          
    167          
    168          
    169          
    170          
    171          
    172          
    173          
    174          
    175          
    176          
    177          
    178          
    179          
    180          
    181          
    182          
    183          
    184          
    185          
    186          
    187          
    188          
    189          
    190          
    191          
    192          
    193          
    194          
    195          
    196          
    197          
    198          
    199          
    200          
    201          
    202          
    203          
    204          
    205          
    206          
    207          
    208          
    209          
    210          
    211          
    212          
    213          
    214          
    215          
    216          
    217          
    218          
    219          
    220          
    221          
    222          
    223          
    224          
    225          
    226          
    227          
    228          
    229          
    230          
    231          
    232          
    233          
    234          
    235          
    236          
    237          
    238          
    239          
    240          
    241          
    242          
    243          
    244          
    245          
    246          
    247          
    248          
    249          
    250          
    251          
    252          
    253          
    254          
    255         (256 行受影响)*/
      

  8.   


    (在当前冯·诺伊曼体系的计算机中)
    一切数据的本质都是字节流。
    不可见字符、未知字符、乱码神马的,都是浮云。http://topic.csdn.net/u/20100806/18/e4b43f25-1b73-4786-907e-9576d8be7d36.html