2017-07-08 27 views
0

我正在使用sqlite select查询从列表中检索名称,其中我使用了以下select查询类似但它给了我一个错误,因为NaN任何人都可以告诉我什么是错误的这个查询。获取sqlite中的错误,如在ionic1中查询

var query = 'SELECT DISTINCT * FROM ' + tblName + ' WHERE name LIKE ' % '' + name + '' % ' ORDER BY name COLLATE NOCASE ASC'; 

错误:

getAllSearchQuery: SELECT DISTINCT * FROM phonebookNaNViNaN

回答

1
var query = 'SELECT DISTINCT * FROM ' + tblName + ' WHERE name LIKE \'%' + name + '%\' ORDER BY name COLLATE NOCASE ASC'; 

,因为名字是字符串,因此需要添加 '或”,如果你的代码是用',所以你需要添加一个斜杠(\)

+0

作为对象获取错误{消息:“sqlite3_prepare_v2失败:接近”%“:语法错误”,代码:5}并且日志是SELECT DISTINCT * FROM电话簿其中名称LIKE%Vishnu%ORDER BY名称COLLATE NOCASE –

+0

'var查询='SELECT DISTINCT * FROM'+ tblName +'姓名LIKE \'%'+名称+'%\'ORDER BY名称COLLATE NOCASE ASC';' 或此代码 'var query ='SELECT DISTINCT * FROM' + tblName +'WHERE name LIKE'%'+ name +'%“ORDER BY name COLLATE NOCASE ASC';' 对不起,这是我的错,因为name是字符串,所以需要添加'或者',因为您的代码正在使用',所以你需要添加一个斜杠\为它 – Ricky

+0

如果我的答案是有用的请打勾和+1。谢谢你。 – Ricky

0

我想问题是没有引号,如果可能使用的是编程语言,试着使用“和”的组合,如下所示:

var query = 'SELECT DISTINCT * FROM ' + tblName + ' WHERE name LIKE "%' + name + '%" ORDER BY name COLLATE NOCASE ASC'; 

或反向:

var query = 'SELECT DISTINCT * FROM ' + tblName + ' WHERE name LIKE '%" + name + "%' ORDER BY name COLLATE NOCASE ASC'; 

在引号的组合的要点是,这允许以包含一个代码引述部分到另一个。