im actually dotnet developer now im starting to develop mobile application using eclipse android and phonegap i have studied these in docs.phonegap.com i find no difficulty in examples ie camera device and accelerometer. I have successfully connected to database now my question is how can i applay autoincrement in create table and retreive ( max id +1) from database the given code is not working
my code is
Javascript code#
function onDeviceReady() {
var db = window.openDatabase('dbNexTrainer','1.0', 'NexTrainer',2 * 1024 * 1024);
db.transaction(populateDB, errorCB, successCB);
}
function populateDB(tx) {
tx.executeSql('CREATE TABLE IF NOT EXISTS tbl_Excercise (ExId INTEGER PRIMARY KEY AUTOINCREMENT ,ExName ,ExDescription ,ExPreCondition ,ExImage ,IsActive INTEGER,AddDate DATE)');
tx.executeSql('Delete from tbl_Excercise');
tx.executeSql('INSERT INTO tbl_Excercise VALUES (1,"Excercise 1","Description 1","Pre Condition 1","image/image1.png",1,"12/09/2012 01:00:00")');
tx.executeSql('INSERT INTO tbl_Excercise VALUES (2,"Excercise 2","Description 2","Pre Condition 2","image/image2.jpg",1,"12/09/2012 01:00:00")');
tx.executeSql('INSERT INTO tbl_Excercise VALUES (3,"Excercise 3","Description 3","Pre Condition 3","image/image3.jpg",1,"12/09/2012 01:00:00")');
tx.executeSql('INSERT INTO tbl_Excercise VALUES (4,"Excercise 4","Description 4","Pre Condition 4","image/image4.jpg",1,"12/09/2012 01:00:00")');
second problem how to retrieve max id
Javascript Code
function NewExcercise(){
var db = window.openDatabase('dbNexTrainer','1.0', 'NexTrainer',2 * 1024 * 1024);
db.transaction(GetNewExId, errorCB);
}
var GetNewExId=function(tx)
{
var db = window.openDatabase('dbNexTrainer','1.0', 'NexTrainer',2 * 1024 * 1024);
var sql = "SELECT MAX(ExId)+1 as ExId FROM tbl_Excercise";
tx.executeSql(sql, [], ReturnNewId, errorCB);
return window.localStorage.getItem('NewExId')
}
var ReturnNewId = function(transaction, results) {
try{
var row = results.rows.item(i);
window.localStorage.setItem('NewExId', row['ExId']);
}
catch(e){
alert(e);
}
}
You have error in CREATE TABLE syntax, you need to define the data types for all the table fields,
try this statement,