请问PostgreSQL定义表的字段长度的时候,如何指定是全角的还是半角的长度? 本帖最后由 urdoom 于 2009-08-03 14:28:52 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 show charset 你会发现uft8最大会占3个字节长,那当然会出现你上面所说的容纳全角的情况啦如果你的需求要只能容纳300个半角的字符,而又不能容纳全角的,则选择一中字符集最大长度为1的即可字符集的选择,你还要考虑你的表所存的内容(例如:有没有中文等)。如果只是某表某字段的话,你可以设置字段的字符集,而不用改系统参数的字符集了字符集的作用范围:字段>表>库>服务器 字符字段就是这样的,以字符为单位,而不是字节为单位.如果要满足你的要求,改用SQLASCII类型,它的字符单位为一个字节,而且不限制任何字符.也可用bytea类型 您好,感谢您的回答设计要求是这样的,要求只能容纳300个半角长度的字符,但是不限制是半角还是全角字符比如150个汉字目前用UTF8的话,是300个汉字不知道有没有这个一种字符集可以做到 SQLASCII类型PostgreSQL里面有么?找了下没找到啊bytea类型无法指定长度 或者 加check约束字节函数 octet_length() 可以返回内码字节数,但utf8一个汉字是3个字节. 请教mysql如何跨库查询access 各位高手,请帮忙看看这段代码执行时为什么总是报#1064错误? [急]MySQL中建表不能使用中文字段吗? 我重置mysql的一次经历,虽然重置成功了,但是有一个提示我不知什么意思? MSSQL转mySQL语法问题,分再加 c#对Mysql的备份 创建一个触发器 高人求解 救急!!MySQL错误 如何配置MYSQL数据源 创建表,导致mysql不作出任何提示 请教使用like模糊查询时,查询字串含有通配符(比如%),怎么处理? 要实现这样的效果用什么样的语句?
你会发现uft8最大会占3个字节长,那当然会出现你上面所说的容纳全角的情况啦如果你的需求要只能容纳300个半角的字符,而又不能容纳全角的,则选择一中字符集最大长度为1的即可
字符集的选择,你还要考虑你的表所存的内容(例如:有没有中文等)。
如果只是某表某字段的话,你可以设置字段的字符集,而不用改系统参数的字符集了
字符集的作用范围:
字段>表>库>服务器
也可用bytea类型
您好,感谢您的回答
设计要求是这样的,要求只能容纳300个半角长度的字符,但是不限制是半角还是全角字符
比如150个汉字
目前用UTF8的话,是300个汉字
不知道有没有这个一种字符集可以做到
SQLASCII类型PostgreSQL里面有么?找了下没找到啊
bytea类型无法指定长度
字节函数 octet_length() 可以返回内码字节数,但utf8一个汉字是3个字节.