Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.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数据库中删除行_Javascript_Web Applications_Sqlite - Fatal编程技术网

Javascript 无法从SQLITE数据库中删除行

Javascript 无法从SQLITE数据库中删除行,javascript,web-applications,sqlite,Javascript,Web Applications,Sqlite,我的sqlite数据有一个奇怪的问题。我可以插入和显示我的数据,但我不能删除它们,尤其是当我执行“等于”查询时 这是我的密码: <body> <div id="results"> Results: </div> <button onclick="insert_id(); return false;">Insert</button> <button onclick="show_id(); return false;"&g

我的sqlite数据有一个奇怪的问题。我可以插入和显示我的数据,但我不能删除它们,尤其是当我执行“等于”查询时

这是我的密码:

<body>

<div id="results">
    Results:
</div>

<button onclick="insert_id(); return false;">Insert</button>
<button onclick="show_id(); return false;">Show</button>
<button onclick="delete_id(); return false;">Delete</button>

<script>
var db = openDatabase("testdb", "1.0", "testdb favourites", 2*1024*1024);

function insert_id(){
    db.transaction(
    function(t){ // This is the callback with "t" as the transaction object
    t.executeSql("CREATE TABLE IF NOT EXISTS favourites (id TEXT PRIMARY KEY)");
    }
);

var rec_id = "40";

db.transaction(
    function(t){
    t.executeSql("INSERT INTO favourites VALUES (?)", [rec_id]);
    }
);
}

function show_id(){
var list = document.getElementById("results");
var rec_id = 0;

db.transaction(
 function(t){
  t.executeSql("SELECT id AS rec_id FROM favourites WHERE id > ?" ,[rec_id], function(t,r){
     for (var i=0; i < r.rows.length; i++){
      rec_id = r.rows.item(i).rec_id;           

      list.innerHTML +="<li>"+rec_id+"</li>";           
        }
    }, 

    function(t,e){alert("Fehler: " + e.message + "\n\nBitte melde dich bei bauchalarm@outlook.com wenn der Fehler öfters auftritt!");})
}
);
}

function delete_id(){
var rec_id = 40;

db.transaction(
 function(t){
  t.executeSql("DELETE FROM favourites WHERE id = ?", [rec_id]);
        }
);
}
</script>

</body>

如果我查询id<40的位置,则40以下的所有数据和id为40的所有数据都将被删除。。。但是当我查询id=40时,什么也没有发生…

我认为问题在于你的id是文本而不是INT

尝试将创建表更改为

CREATE TABLE IF NOT EXISTS favourites (id INT PRIMARY KEY);
id列不需要被引用为_id吗?