我的一位同事说mysql中的Length()函数不是复制安全的。此函数用于update语句。这是真的?在编写查询并将复制考虑在内时,我们还应该考虑什么呢
答案 0 :(得分:2)
因为您复制的表也可以使用不同的字符集。主站和从站之间的表不需要完全相同,具有相同的索引等。
mysql> create table replic(
field1 varchar(20) character set latin1,
field2 varchar(20) character set utf16,
field3 varchar(20) character set utf32);
Query OK, 0 rows affected (0.07 sec)
mysql> insert into replic values('Adrian', 'Adrian', 'Adrian');
Query OK, 1 row affected (0.07 sec)
mysql> select length(field1), length(field2), length(field3) from replic;
+----------------+----------------+----------------+
| length(field1) | length(field2) | length(field3) |
+----------------+----------------+----------------+
| 6 | 12 | 24 |
+----------------+----------------+----------------+
1 row in set (0.00 sec)