Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript sqlite-无法使用WHERE子句查询web数据库_Javascript_Sqlite - Fatal编程技术网

Javascript sqlite-无法使用WHERE子句查询web数据库

Javascript sqlite-无法使用WHERE子句查询web数据库,javascript,sqlite,Javascript,Sqlite,我在尝试查询sqlite数据库时使用WHERE子句。我知道数据库中有数据,我应该能够根据查询中的条件检索这些数据,但我似乎无法让它工作 当我不带条件地查询时 sql = 'select LocationGUID, ID, Fullname FROM tblUser'; 我能够返回所选列中的所有数据。这是报价问题吗?我尝试在条件值周围加上单引号和双引号,但返回的行数仍然是0 Javascript: sql = 'select LocationGUID, ID, Fullname FROM tbl

我在尝试查询sqlite数据库时使用WHERE子句。我知道数据库中有数据,我应该能够根据查询中的条件检索这些数据,但我似乎无法让它工作

当我不带条件地查询时

sql = 'select LocationGUID, ID, Fullname FROM tblUser';
我能够返回所选列中的所有数据。这是报价问题吗?我尝试在条件值周围加上单引号和双引号,但返回的行数仍然是0

Javascript:

sql = 'select LocationGUID, ID, Fullname FROM tblUser WHERE UserName=\'mike\' AND Password=\'mike123\'';

mydb = getDBConn();
mydb.transaction(function(tx) {tx.executeSql(sql, [], function(tx,results) {
var size = results.rows.length;

console.log(size);

for (var i=0;i<size;i++) {
    for (var key in results.rows.item(0)){
         var row = results.rows.item(i);
         console.log(row[key]);
    }
}
sql='从tblUser中选择LocationGUID、ID、Fullname,其中UserName=\'mike\'和Password=\'mike123\';
mydb=getDBConn();
mydb.transaction(函数(tx){tx.executeSql(sql,[],函数(tx,结果){
变量大小=results.rows.length;
控制台日志(大小);

对于(var i=0;i而言,查找此行的正确查询如下:

SELECT ... FROM tblUser WHERE UserName = 'mike                ' AND ...
您可能需要更改存储数据的代码以删除这些不需要的空格

要修复数据库,请使用以下方法:

UPDATE tblUser SET UserName = rtrim(UserName)

SELECT用户名、typeof(用户名)、hex(用户名)的输出是什么来自tblUser
这一行?mike text 6D696B6520202020202020202020202002002002020这非常有效,谢谢!我尝试双击用户名和密码值以查看是否有空格,但没有任何空格显示为蓝色。SELECT hex()查询非常有效,我必须记住它。