在SQLite3中,如何在LIKE子句中进行SQL转义?
发布时间:2020-12-12 18:56:07 所属栏目:百科 来源:网络整理
导读:我想在sqlite3中运行LIKE查询,并安全地转义用户的输入.基本上,我想做这样的事情: char* query = "SELECT * FROM table WHERE LOWER(notes) LIKE '%?%'";sqlite3_stmt* statement;sqlite3_prepare_v2( database,query,-1,statement,NULL ); 但是?在LIKE表达
我想在sqlite3中运行LIKE查询,并安全地转义用户的输入.基本上,我想做这样的事情:
char* query = "SELECT * FROM table WHERE LOWER(notes) LIKE '%?%'"; sqlite3_stmt* statement; sqlite3_prepare_v2( database,query,-1,&statement,NULL ); 但是?在LIKE表达式中不受尊重.有人知道怎么做吗? 解决方法char* query = "SELECT * FROM table WHERE LOWER(notes) LIKE '%' || ? || '%'"; 但我建议您考虑使用FTS3进行全文搜索,因为您的查询运行速度比使用暴力LIKE查询快数百倍. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容