简单的作法是取是字段内容的第一个字节,如果>'0' && <'9' 是数字,否则是中文

解决方案 »

  1.   

    >='0' && <='9' :)
      

  2.   

    for (i=0;i<=varchar型的长度;i++)
    {
      if (varchar[i] is 汉字机内码的范围)
      {
         do somethine;//是汉字
         i+=2;
      }
      else
      {
        do somethine;//不是汉字
        i++;
      }
    }
      

  3.   

    用ASCII码判断,数字与各字符及汉字的ASCII码不同
      

  4.   

    用substr取字段的一个字符,然后用lengthb判断长度,此法仅限于汉字与ASCII码混合的情况。例:lengthb(substr('汉3字',1,1)) = 2   汉字
    lengthb(substr('汉3字',2,1)) = 1   ASCII
    lengthb(substr('汉3字',3,1)) = 2   汉字
      

  5.   

    又或:ascII(substrb('汉3字',1,1))) > 127  汉字
    Else ASCII