Trying to insert information to a database however I get the following error message.
Location: Ui/mydb.js Message: Uncaught Error: no such table: itemFieldTable(code 1):, while compiling: INSERT INTO itemFieldTable (itemField )VALUES(?) Source: db.execute('INSERT INTO itemFieldTable (itemField) VALUES(?)',itemField.value);My code:
function checkforDB(){ var db = Ti.Database.open('mydb'); db.execute('CREATE TABLE IF NOT EXISTS itemFieldTable (itemField TEXT)'); db.close(); } function insertItem(itemField){ db = Ti.Database.open('mydb'); db.execute('INSERT INTO itemFieldTable (itemField) VALUES (?)',itemField.value); var insertid = db.lastInsertRowId; db.close(); list.fireEvent('dbupdate'); return insertid; }This is for Android using latest version of Titanium.
1 Answer
database handling Example ,It will help you
//create the database object
var db = Titanium.Database.open('mydb');
//execute the table create script
db.execute('CREATE TABLE IF NOT EXISTS itemFieldTable (ID INTEGER PRIMARY KEY AUTOINCREMENT, NAME TEXT)');
function insertUser(name) {
var sql = "INSERT INTO itemFieldTable (name) VALUES (";
sql = sql + "'" + name + "')";
db.execute(sql);
Ti.API.info('Query : ' + sql + ' executed successfully with rowId : ' + db.lastInsertRowId );
return db.lastInsertRowId;
}
function deleteUser(id) { var sql = "DELETE FROM itemFieldTable WHERE id = " + id; db.execute(sql); }
function getUsers() {
var sql = "SELECT * FROM itemFieldTable";
var results = [];
var resultSet = db.execute(sql);
while (resultSet.isValidRow()) {
results.push({
id: resultSet.fieldByName('id'),
name: resultSet.fieldByName('name')
});
resultSet.next();
}
resultSet.close();
return results;
}
Your Answer
Think you can help? Login to answer this question!