sql server数据库中,一个汉字是做为两个字符长度来处理的吗????

lnqnwy 2004-08-02 01:23:49
我今天试了一下!往数据库直接插入数据,字段长度定义为200,如果插入的都是字符,没问题,但是换成了汉字就不行了!只能插入100个汉字,到101 就不行了!请问sql server 2000对字符以及汉字是不是这样定义的!!多谢!但是在网页中一个汉字却被当成一个字符来用,是不是这样啊??多谢!!一个汉字能不能当成一个字符来用,在数据库中!
...全文
1148 点赞 收藏 18
写回复
18 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
智能大石头 2004-08-02
你可以用字节专用的函数判断呀,比如:LenB,InstrN,LeftB,RightB,MidB等等,这些都是返回字节的,很好用。
回复
lnqnwy 2004-08-02
这样吧!我也怕人家误会!选把这个贴子的结了!我欠你五十分!以后补!呵呵!只是分少了点了!
回复
lnqnwy 2004-08-02
呵呵!不会吧!我那个贴子没有回贴!我想结也结不了啊!这也算是倒分!呵呵!
回复
lbd8848 2004-08-02
多谢,会不会有倒分之嫌呀
回复
lnqnwy 2004-08-02
多谢!!!明白了!!请lbd8848(lbd)到下面的网址回个贴子!给您结分!这个贴子是以前发的,问题已解决只是没结分!那可是50分呢!您去那!我给您结分!!!呵呵! http://community.csdn.net/Expert/topic/2738/2738161.xml?temp=.4925959
回复
lbd8848 2004-08-02
nvarchar和nchar型为unicode字符类型,用于支持国际上的非英文语种
它的存储空间为非unicode数据类型的两倍
如果是存储的信息为英文,最好使用varchar或char型
回复
lnqnwy 2004-08-02
这么回事!那启不是varchar没有用了吗?不会吧!请各位都是怎么处理的?多谢!
回复
lbd8848 2004-08-02
浪费一点空间
回复
lnqnwy 2004-08-02
楼上的我试过了!原来定义的是varchar我现在改为nvarchar,就好用了!我以前定义字段的时间大多用的是varchar,它和nvarchar有什么区别吗?会不会对字段造成什么影响!请问各位!你们遇到这种情况时都是怎么解决的???多谢了·!
回复
lbd8848 2004-08-02
如果字段是varchar或char型
改为nvarchar或nchar型试试
回复
lnqnwy 2004-08-02
说白了!我遇到的情况是!我在数据库中定义长度100,但是我在输入框中输入100个汉字就不行了!会出错!只能输入50个,如是再遇到汉字和字符混合用的!提交表单时长度就不好控制了!maxlength="30" 这个属性就不管用了!这样的情况怎么解决呢??
回复
mikespook 2004-08-02
字符是一个整体,可能是一个字节,可能是两个字节

LEN(“中国”)的结果为2
BLEN(“中国”)的结果为4
回复
lnqnwy 2004-08-02
不太明白!请问能说具体点吗?
回复
mikespook 2004-08-02
注意字符与字节的区别~~~

如果你使用VBS,可以使用B类函数~~~BLEN等
回复
tutu944 2004-08-02
占两个字符的长度,但是仍然作为一个字符取~
回复
lnqnwy 2004-08-02
那这样的话!在表单提交时
<input name="tx_skind" type="text" class="box" size="10" maxlength="30" >
maxlength="30" 有这一项,限制输入的长度!它可是把汉字当成一个字符来对待的!这样的问题怎么解决呢!让它把汉字当成两个字符???多谢!
回复
yeno 2004-08-02
但取出来时,只作一个字符长度
回复
mikespook 2004-08-02
一个中文字符是两个字节,火星人都知道~~~
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2004-08-02 01:23
社区公告
暂无公告