javascript - 为输入值显示 SQL 单列值的简单方法
javascript - simple way to display SQL single column value for input value
我是一个新的 Cordova-Android 程序制作者。我已成功创建并插入本地数据库字段。但是当我想将它们显示到 input
标签时我卡住了。
这是我的 table :
+----+------+---------+
| id | word | stats |
+----+------+---------+
| 1 | abc | stackov |
| 2 | def | erflow |
+----+------+---------+
我试试这个代码
$(document).ready(function(){
docDB = window.openDatabase("Test", "1.0", "Test Data", 50000);
docDB.transaction(function (tx) {
tx.executeSql("SELECT * FROM Test WHERE word='abc'", [], function (tx, results) {
var dblen = results.rows.length;
if( dblen>0 ){
document.getElementById("abc").value = results.rows.item(0)['stats'];
}
}, null);
});
});
我一直在寻找最简单的方法,因为我只想显示单个 SQL 列值 word='abc'
和其他 word
值,例如 word='def'
。有人可以更正吗?
我会将结果值插入 input
字段
Name : <input type="text" id="abc">
感谢您的回答:)
您需要在 sql 代码中重新确认评估
尝试在 SQL 语句之外添加您的搜索值,并将 item
作为对象引用,见下文:
$(document).ready(function(){
docDB = window.openDatabase("Test", "1.0", "Test Data", 50000);
docDB.transaction(function (tx) {
tx.executeSql("SELECT * FROM Test WHERE word=?", ['abc'], function (tx, results) {
var dblen = results.rows.length;
if( dblen>0 ){
document.getElementById("abc").value = results.rows.item(0).stats;
}
}, null);
});
});
从实际的 SQL 语句中删除搜索参数有几个不同的好处。一种是,通过传入变量,它们被正确转义,不会破坏语句。还有一个就是,在调试代码的时候,语句更加清晰。
对于那些可能不熟悉语法的人,您可以在要放置变量输入或搜索参数的地方添加 ?
,然后在语句 []
项被删除后的数组中数组并添加到 SQL 语句。
示例:
..."SELECT * FROM thisTable WHERE id IN(?) AND name LIKE ? and gender=?", ['1,32,456', '%tim%', 'M']
生成:
"SELECT * FROM thisTable WHERE id IN('1,32,456') AND name LIKE '%tim%' and gender='M'"
我是一个新的 Cordova-Android 程序制作者。我已成功创建并插入本地数据库字段。但是当我想将它们显示到 input
标签时我卡住了。
这是我的 table :
+----+------+---------+
| id | word | stats |
+----+------+---------+
| 1 | abc | stackov |
| 2 | def | erflow |
+----+------+---------+
我试试这个代码
$(document).ready(function(){
docDB = window.openDatabase("Test", "1.0", "Test Data", 50000);
docDB.transaction(function (tx) {
tx.executeSql("SELECT * FROM Test WHERE word='abc'", [], function (tx, results) {
var dblen = results.rows.length;
if( dblen>0 ){
document.getElementById("abc").value = results.rows.item(0)['stats'];
}
}, null);
});
});
我一直在寻找最简单的方法,因为我只想显示单个 SQL 列值 word='abc'
和其他 word
值,例如 word='def'
。有人可以更正吗?
我会将结果值插入 input
字段
Name : <input type="text" id="abc">
感谢您的回答:)
您需要在 sql 代码中重新确认评估
尝试在 SQL 语句之外添加您的搜索值,并将 item
作为对象引用,见下文:
$(document).ready(function(){
docDB = window.openDatabase("Test", "1.0", "Test Data", 50000);
docDB.transaction(function (tx) {
tx.executeSql("SELECT * FROM Test WHERE word=?", ['abc'], function (tx, results) {
var dblen = results.rows.length;
if( dblen>0 ){
document.getElementById("abc").value = results.rows.item(0).stats;
}
}, null);
});
});
从实际的 SQL 语句中删除搜索参数有几个不同的好处。一种是,通过传入变量,它们被正确转义,不会破坏语句。还有一个就是,在调试代码的时候,语句更加清晰。
对于那些可能不熟悉语法的人,您可以在要放置变量输入或搜索参数的地方添加 ?
,然后在语句 []
项被删除后的数组中数组并添加到 SQL 语句。
示例:
..."SELECT * FROM thisTable WHERE id IN(?) AND name LIKE ? and gender=?", ['1,32,456', '%tim%', 'M']
生成:
"SELECT * FROM thisTable WHERE id IN('1,32,456') AND name LIKE '%tim%' and gender='M'"