为什么没有sqlite3_mprintf16()函数?我需要'%q'功能,但需要UTF-16字符串。
答案 0 :(得分:2)
为什么没有sqlite3_mprintf16()函数?
因为SQLite尚未被UTF-16感染。它几乎在界面的任何地方使用UTF-8,因此格式化以UTF-16字符串编码的查询没有意义。
我需要'%q'功能,但需要UTF-16字符串。
这是一个不同的故事。你需要的是'%q16',实际上并不存在。
说,你根本不应该使用sqlite3_mprintf
。使用预准备语句和绑定函数。它们允许您使用sqlite3_bind_text16
绑定UTF-16字符串。更好的是,stop using UTF-16 for your strings。