内存中sqlite表的不区分大小写搜索
我有数据库电话簿和表联系人,表联系人的Create语句如下所示: 创建“联系人”表( “名称”文本整理nocase, “姓氏”文本整理nocase, “街道名称”文本整理nocase, “街道编号”文本对照表, “城市”文本整理nocase, “post”文本整理nocase, “邮局代码”文本对照表, “文本到发布”文本整理nocase, “区域代码”文本整理nocase, “电话”文本整理nocase, “传真”文本整理nocase, “电子邮件”文本整理(无案例) 我用以下代码从java代码将其加载到内存中: “将‘电话簿’附加为tempInMemoryDb”和 “创建表tempInMemoryTable作为从“联系人”中选择*;” 但是使用Create table。。作为选择。。resultset被复制到新表,而不声明列属性(在我的例子中是collate nocase)内存中sqlite表的不区分大小写搜索,sqlite,Sqlite,我有数据库电话簿和表联系人,表联系人的Create语句如下所示: 创建“联系人”表( “名称”文本整理nocase, “姓氏”文本整理nocase, “街道名称”文本整理nocase, “街道编号”文本对照表, “城市”文本整理nocase, “post”文本整理nocase, “邮局代码”文本对照表, “文本到发布”文本整理nocase, “区域代码”文本整理nocase, “电话”文本整理nocase, “传真”文本整理nocase, “电子邮件”文本整理(无案例) 我用以下代码从java代
我需要的是不区分大小写的搜索,但是使用内存中的表,所以您可以告诉我如何执行此操作吗?如果您已经知道表结构,您可以使用相同的结构创建表:
CREATE TABLE tempInMemoryTable(name text collate nocase, ...)
然后复制记录:
INSERT INTO tempInMemoryTable SELECT * FROM contacts;
是的,这解决了问题,我有同样的想法,但我认为这会很慢(我需要在不超过几秒钟内复制大约1400000条记录)。谢谢。
创建表。。。选择…
命令只是单独的创建
/插入
命令的简写;数据库必须完成的工作量是相同的。