在(VB)报表中检测,用textwidth()函数。

解决方案 »

  1.   

    "我a23最"   在sql server 2000中,占用字符宽度应为:5
      

  2.   

    create function funcGetLength (@strSource varchar(1000))
    returns float
    as
    begin
    declare @iLen int
    declare @kLen float
    declare @j int
    set @iLen=len(@strSource)
    set @j=0
    set @kLen=0
    while @j<@iLen
    begin
    if Ascii(substring(@strSource,@j+1,1))>=128 
    begin set @kLen=@kLen+1 end
      else 
    begin set @kLen=@kLen+0.5 end
      set @j=@j+1
    end
    return(@kLen)
    end
    go
      

  3.   

    select datalength(@字符串)/2.0
      

  4.   

    prcgolf(小鸟) 的办法不错,又学了一招
      

  5.   

    declare @ varchar(800)
    set @ = '啊asdas'
    select datalength(@)/2 + case when datalength(@)%2 >0 then 0.5 else 0 end