【问题标题】:How to perform retrieval of data from SQLite without callback function如何在没有回调函数的情况下从 SQLite 检索数据
【发布时间】:2016-04-06 07:48:43
【问题描述】:

我可以在没有回调的情况下从 sqlite 数据库中检索数据吗?

我需要这样的东西,但它不起作用

var querwy = "SELECT * FROM stock";
var result=$cordovaSQLite.execute(db, querwy, []);
alert(result.rows.item(0).name);

而不是这个正在工作

var querwy = "SELECT * FROM stock";
$cordovaSQLite.execute(db, querwy, []).then(function(result){
alert(result.rows.item(0).name);
},function(error){
alert('error');
});

我确实需要删除回调函数。

【问题讨论】:

  • 代码在语法上似乎是错误的......
  • 是的,谢谢,我刚刚编辑了它
  • 回调是一个有用的元素。在这种情况下,当 db 操作结束时,将调用回调。请求和回调之间的时间是系统用来从数据库中检索数据的时间。无论如何,必须进行数据的检索,并且您使用的代码似乎无法处理分配情况下的检索。

标签: android sqlite cordova


【解决方案1】:

如果使用cordovaSQLite 对您来说不是一个限制条件,那么您可以使用SQLite默认情况下包含在高于 5.3 的每个 Php 版本中
这个例子有效:

class MyDB extends SQLite3
{
   function __construct()
   {
      $this->open('test.db');
   }
}
$db = new MyDB();
if(!$db){
   echo $db->lastErrorMsg();
} else {
   echo "Opened database successfully\n";
}

$sql = "SELECT * from STOCK";

echo "<pre>";
$ret = $db->query($sql);
while($row = $ret->fetchArray(SQLITE3_ASSOC) ){
   //Show as columns
   //echo "ID = ". $row['ID'] . "\n";
   print_r( $row ) . "\n"
}
echo "Operation done successfully\n";
$db->close();

也许你可以做类似的事情。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-26
    • 2018-10-20
    • 2018-02-12
    • 1970-01-01
    • 1970-01-01
    • 2015-12-26
    相关资源
    最近更新 更多