我正在尝试将INSERT插入到我正在开发的Android应用程序中的SQLite数据库中。 我有一个包含一些字段的HTML表单,我可以从这些字段中获取信息。 当我尝试进行INSERT时,我收到一个错误:'Error Processing SQL:undefined'。 有谁能够帮我?我是个新手。 这是我正在使用的代码: HTML表格
<form name="editNoteForm" id="editNoteForm" method="post" action="index.html">
<label for="primeiroNome">1º Nome</label>
<input type="text" name="primeiroNome" id="primeiroNome">
<label for="utlimoNome">Último Nome</label>
<input type="text" name="ultimoNome" id="ultimoNome">
<label for="numeroTelefone">Telefone</label>
<input type="number" name="numeroTelefone" id="numeroTelefone">
<input type="submit" onclick="onSubmit();" id="editFormSubmitButton" value="Save Note">
</form>
Javascript代码
function onSubmit() {
db.transaction(addRowDB, errorCB, successCB);
alert('Done');
}
function addRowDB(tx) {
var primeiroNome = document.getElementById('primeiroNome').value;
var ultimoNome = document.getElementById('ultimoNome').value;
var numeroTelefone = document.getElementById('numeroTelefone').value;
tx.executeSql('INSERT INTO DEMO (id, nome, ultimo, telefone) VALUES (null, primeiroNome, ultimoNome, numeroTelefone)');
}
感谢。
答案 0 :(得分:0)
tx.executeSql('INSERT INTO DEMO (id, nome, ultimo, telefone) VALUES (null, primeiroNome, ultimoNome, numeroTelefone)');
将插入文字值“primeiro Nome”......
您需要插入变量primeiro Nome的值...(例如,连接(+))
答案 1 :(得分:0)
我发现了问题。这真的是''。所以我寻找一个函数,在变量之前和之后放置它们并且它工作。代码就是这个:
function sqlstr(s) {
return "'"+s.replace(/'/g, "''")+"'";
}
function addRowDB(tx) {
var primeiroNome = document.getElementById('primeiroNome').value;
var ultimoNome = document.getElementById('ultimoNome').value;
var numeroTelefone = document.getElementById('numeroTelefone').value;
tx.executeSql('INSERT INTO DEMO (id, nome, ultimo, telefone) VALUES (null, ' + sqlstr(primeiroNome) + ', ' + sqlstr(ultimoNome) + ', ' + sqlstr(numeroTelefone) + ')');
}
感谢您的帮助:)