MySql 5.5 之前,UTF8 编码只支持1-3个字节,只支持BMP这部分的unicode编码区,BMP是从哪到哪?基本就是 0000 ~ FFFF 这一区. 从MySQL 5.5 开始,可支持4个字节UTF编码utf8mb4,一个字符最多能有4字节,所以能支持更多的字符集. utf8mb4 is a superset of utf8 tf8mb4兼容utf8,且比utf8能表示更多的字符. 至于什么时候用,看你做的什么项目了...在做移动应用时,会遇到IOS用户在文本的区域输入emoji表…
OCIStmtExecute: ORA-12899: value too large for column "WSG"."WX_ENTER_TASTE"."GENDER" (actual: 3, maximum: 2) 今天调查一个oracle数据库问题的时候,发现在11g中一个汉字占2个字节,在10g中占3个字节,导致将11g数据库中的数据导入到10g的时候总是出错,开始的时候还以为是11g和10g的版本不一样,汉字占用字节数不一样,后来一想,…
我们都知道在数据类型中,char类型占1个字节,short占2个字节,int占4个字节,long占8个字节等等. 在计算结构体大小时需要考虑其内存布局,结构体在内存中存放是按单元存放的,每个单元多大取决于结构体中最大基本类型的大小,下面我们看几个例子: 1. struct A { char a; int b; short c; }str1; 这里char占1个字节,int占4个字节,short占2个字节,按单元存放如下图: 1 2 3 4 a b b b b c c 由于a占…