一直困惑我的问题,字符串中,空格,tab符,回车符,换行符,区别如何看来来呀.为何select 出来,显示都一样呀?select '| '+char(13)+' |'
select '| '+char(10)+' |'
select '| '+char(13)+char(10)+' |'
select '| '+char(32)+' |'
select '| '+'A'+' |'
select '| '+char(9)+' |'
select '| '+'abcd'+' |'
ascii码,
13对应的是回车,
10是换行,
9是tab符,
32是空格,为何这些字符显示都一样呀.
如果这些字符夹在字符串中,如何知道是什么字符呀?

解决方案 »

  1.   

    显示是显示.
    你ascii()就明白了.
      

  2.   

    显示是显示. 
    你ascii()就明白了.
    ---------------
    可见字符可以 ascii,如
    select ascii('A')但是tab,回车,换行,都是控制字符呀,如果用ascii()函数查询一个字符对应的ascii吗,那么字符处如何写呢?
      

  3.   


    --' ',' '的,回车,换行的测试不了.
    create table tb (id int , col varchar(10))
    insert into tb values(1,' ')
    insert into tb values(2,' ')
    goselect id , ascii(col) col from tbdrop table tb/*
    id          col
    ----------- -----------
    1           32
    2           9(2 行受影响)
    */
      

  4.   

    空格,tab符,回车符,我通过下列方式可以录入到表中,可是换行符,我如何录入到表中呀.
    换行符是ascii码对应为 10 的字符create table tb (id int , col varchar(10))
    --空格
    insert into tb values(1,' ')
    --tab符
    insert into tb values(2,' ')
    --回车符
    insert into tb values(3,'
    ')goselect id , ascii(col) col from tb
    /*
    id          col         
    ----------- ----------- 
              1          32 
              2           9 
              3          13 (所影响的行数为 3 行)
    */
      

  5.   

    回车符与换行符的显示完全相同,我真不明白,回车符和换行符的区别何在?declare @str varchar(10)set @str=char(13)
    print '回车:|'+@str+'|'set @str=char(10)
    print '换行:|'+@str+'|'set @str=char(9)
    print 'tab符:|'+@str+'|'set @str=char(161)
    print '全角空格:|'+@str+'|'set @str=char(32)
    print '半角空格:|'+@str+'|'/*
    回车:|
    |
    换行:|
    |
    tab符:| |
    全角空格:||
    半角空格:| |
    */
      

  6.   

    这和操作系统 有关,
    本来的回车是回到当前的行的最前面
          换行就是换一个新行但是在新行的列位和原来的列位一样好像在wins中回车系统自动的就\r\n了,所以你测试的效果差不多,看不出来
    楼主可以 到unix 或mac机上试试看
      

  7.   


    select tab=ascii(' ') 
    select space=ascii(' ')
      

  8.   

    回车如何显示,哪着再利用一个特殊符号来表示吗?楼主提这个问题倒底是为了什么,难道要用SQL做一个文本编辑器吗?
      

  9.   

    如果仅是为了显示出效果,用Print 即可
      

  10.   

    还有很多非可见的ascii值. 这个你难以一一调出来.
    只有放到前台程序里去用编码范围做检测.看一下ascii表就知道了. 太多了.都是你看不到的.