今天在修改Android应用里用到的一个SQLite数据库文件,使用Navicat修改SQLite数据库提示:“no such collation sequence: LOCALIZED”错误,折腾了半天,终于搞定。
Collation简单的说就是排序规则(数据库中有很多排序规则,比如有按英文字母的、有按中文拼音的等等),由于我要修改的数据库文件是从android手机拷贝的,android对SQLite数据库进行了定制,对表中列指定了自定义的collation(排序规则):LOCALIZED。导致在PC电脑中无法插入新纪录,解决办法就是修改该SQLite数据库文件的表定义语句(DDL),去掉对应列定义中的“COLLATE LOCALIZED”,就可正常操作数据库文件了。将去掉排序规则后的数据库文件拷贝回Android手机也是可以正常使用的。