【发布时间】:2015-04-01 20:09:34
【问题描述】:
我有一个用户用来发送消息的网络应用程序。
问题是消息中的字符数 确定发送消息的成本。
我注意到 javascript UI 代码计算了 字符很好,但 DBMS 的内置函数 有时会返回更多的字符。
这里是一个字符串的例子,它展示了这个异常 行为:
String with different lengths..
This string has different lengths depending on the programming language use to count the characters.
Transact SQL LEN() and MySQL LENGTH() return 217.
Python len() returns 212.
Javascript 和 Python 中的标准字符串长度函数返回相似的值,但低于 Transact-SQL 的 LEN() 和 DATALENGTH() 以及 MySQL 的 LENGTH() 返回的值(它们也返回彼此相似的值)。
那么为什么会有不同的值呢?
【问题讨论】:
-
这些是 UTF8 字符串吗?计数可能取决于是计算原始字符还是编码字符。
-
@tdelaney,也许吧。我想知道排序规则是否会导致这种情况,但我想不出一种方法来测试它。
标签: javascript python mysql sql-server