This is my code to create database for an android app!
public class DBhelper extends SQLiteOpenHelper {
public static String DBNAME="db2.db";
public static String TBNAME="tb1";
// any tb in sqlite must contain _id col !
public static String ID="_id";
public static String NAME="appname";
public static String TYPE="locktype";
public static String LIMIT="limit";
public static String LOCK_TIME="lock_time";
public DBhelper(Context context) {
super(context, DBNAME , null, 1);
}
public static String create= "Create table "+TBNAME+"("+ID+" Integer Primary Key Autoincrement," +
NAME+ " text, "+
TYPE+ " text, " +
LIMIT+ " text, " +
LOCK_TIME+" text);";
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
db.execSQL(create);
//this function should include query to create db
}
@Override
public void onUpgrade(SQLiteDatabase db, int arg1, int arg2) {
// TODO Auto-generated method stub
db.execSQL("Drop table if exists "+TBNAME);
db.execSQL(create);
}
public void insert_apps(ArrayList<String> apps)
{
SQLiteDatabase db=getWritableDatabase();
for(String app: apps)
db.execSQL("Insert into tb1(appname) values('"+app+"')");
}
public void details(String name,String limit,String lock_time)
{
SQLiteDatabase db=getWritableDatabase();
//everythingz correct!
db.execSQL("Update "+TBNAME+" set limit='"+limit+"', lock_time='"+lock_time+"' where appname='"+name+"';");
}
}
This is the error i am getting. Please let me know my mistake.
03-15 17:09:55.636: E/AndroidRuntime(29455): Caused by: android.database.sqlite.SQLiteException: near "limit": syntax error (code 1): , while compiling: Create table tb1(_id Integer Primary Key Autoincrement,appname text, locktype text, limit text, lock_time text); 03-15 17:09:55.636: E/AndroidRuntime(29455): at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method) 03-15 17:09:55.636: E/AndroidRuntime(29455): at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:889) 03-15 17:09:55.636: E/AndroidRuntime(29455): at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:500) 03-15 17:09:55.636: E/AndroidRuntime(29455): at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588) 03-15 17:09:55.636: E/AndroidRuntime(29455): at android.database.sqlite.SQLiteProgram.(SQLiteProgram.java:58) 03-15 17:09:55.636: E/AndroidRuntime(29455): at android.database.sqlite.SQLiteStatement.(SQLiteStatement.java:31)
Aucun commentaire:
Enregistrer un commentaire