使用jQuery/Ajax从数据库中检索记录

Retrieve records from database using jQuery/Ajax

本文关键字:检索 记录 数据库 jQuery Ajax 使用      更新时间:2023-09-26

我在网上搜索过,但到目前为止还不确定如何解决我的问题,因为他们似乎在研究其他领域,而不是专注于我的问题。

因此,我想知道在不使用PHP的情况下,使用jQuery和Ajax从数据库中检索一条或多条记录的最佳方法。

我可以用这个代码检索整个数据库

function getRecords(){
var url = 'http://myurl/reports?callback=?';
  $.getJSON(url, null, function(data){
   $.each(data, function(key, value){
    value.date;
    value.area;
    value.details;
    value.number;
    })
  });
};

(该代码不是完整的代码,只是其中的一个示例)。我可以使用上面的值访问所需的数据.var.

我还可以向数据库发送/更新/删除记录,下面是我的删除代码的示例

function DeleteRecord(){
  $.ajax({
    crossDomain: true,
    method: 'POST',
    url: 'http://url/delete',
    data: {"ID": newID},
    success: function(cb){
      console.log("ID to be deleted is : " + newID);
   },
    error: function(){
      alert('error');
    }
  });
}

删除的API:

restapi.post('/delete', function(req, res){
  var delID = req.body.ID;
  db.run("DELETE FROM database WHERE Id='"+delID+"'");
});

当我需要向服务器发送一个请求时,我的问题就会出现,我认为这个请求是.get请求,服务器会传递搜索变量,然后根据变量从数据库中检索记录

所以sql语句类似于

("SELECT * FROM database WHERE number='"+variable+"'", function(err, data)

我似乎不知道这应该是一个get请求,一个post请求,还是一个插入了get请求的post请求。

我使用sqlite作为数据库、javascript、jQuery和Ajax。

任何关于从哪里开始的帮助都将不胜感激,因为我看到的例子实现了PHP,而这不是我正在使用的。

由于没有考虑请求中的响应,我通过以下操作解决了它:

function getRecords(){
  uNumber = $("#userNumber").val();
  $.ajax({
    crossDomain: true,
    method: 'POST',
    url: 'http://url/userReports',
    data: {"Number": uNumber},
    success: function(data){ //It was here I wasn't thinking about correctly
      console.log(data);
      $.each(data, function(key, value){
        console.log(value.area);
        area = value.area;
      })
      //I then displayed the returned data
      document.getElementById("Table").innerHTML = area;
    },
    error: function(){
      alert('error');
    }
  });
};

这对我来说很有效,这可能不是最好的方法,但它对有效