首页 > 解决方案 > 如何知道 sqlite 中的初始数据类型是 UTF-8 还是 UTF-16?

问题描述

这里,函数sqlite3_column_type可以告诉我结果的初始数据类型是否是文本,但它不会告诉我是UTF-8还是UTF-16。有办法知道吗?

谢谢

标签: sqlite

解决方案


如果您有一个全新的空数据库,在创建任何表之前,您可以使用encoding pragma 设置用于 Unicode 文本的内部编码,然后使用它来查看正在使用的编码(默认为 UTF-8)。

存储或检索 TEXT 值时,如果需要,sqlite 会在 UTF-8 和 UTF-16 之间自动转换,因此内部使用哪个并不重要,除非你试图获得最后一点性能其中。


推荐阅读