Note that there are some explanatory texts on larger screens.

plurals
  1. POUnable to insert data into SQLite Database in Android
    primarykey
    data
    text
    <p>I have SQlite database which I kept in assets folder of my project. from assets folder I am doing copy of sqlite db to data\data\packagename\MYSHOES.sqlite. I am successfully retreive data from this database but when I am trying to insert data it's not doing any thing.No error message. Below is my code. </p> <pre><code>public class Shoedb extends SQLiteOpenHelper { private SQLiteDatabase myDataBase; private final Context myContext; private static String DB_DIR = "/data/data/com.customlistview/"; private static String DB_NAME = "MYSHOES.sqlite"; private static String DB_PATH = DB_DIR + DB_NAME; boolean dbfnd; Cursor chk; private String TAG = "Database Helper"; public Shoedb(Context context) { super(context, Shoedb.DB_NAME, null, 1); this.myContext = context; // DB_PATH=myContext.getDatabasePath(DB_NAME).getAbsolutePath(); System.out.println("My DataBase Path: " + DB_PATH); try { copyDataBase(); openDataBase(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public void createDataBase() throws IOException { Log.e("createDataBase1", "+++++++++++++"); boolean dbExist = checkDataBase(); if (dbExist) { Log.e("createDataBase2", "++++++ database already exist"); // do nothing - database already exist } else { // this.getReadableDatabase(); try { copyDataBase(); } catch (IOException e) { throw new Error("Error copying database"); } } } private boolean checkDataBase() { SQLiteDatabase checkDB = null; try { String myPath = DB_PATH; checkDB = SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READONLY); } catch (SQLiteException e) { // database does't exist yet. } if (checkDB != null) { checkDB.close(); } return checkDB != null ? true : false; } private void copyDataBase() throws IOException { // Open your local db as the input stream InputStream myInput = myContext.getAssets().open(DB_NAME); // Path to the just created empty db String outFileName = DB_PATH; // Open the empty db as the output stream OutputStream myOutput = new FileOutputStream(outFileName); // transfer bytes from the inputfile to the outputfile byte[] buffer = new byte[1024]; int length; while ((length = myInput.read(buffer)) &gt; 0) { myOutput.write(buffer, 0, length); } // Close the streams myOutput.flush(); myOutput.close(); myInput.close(); } public static void copyFile(InputStream fromFile, OutputStream toFile) throws IOException { // transfer bytes from the inputfile to the outputfile System.out.println("In copying....."); byte[] buffer = new byte[1024]; int length; try { while ((length = fromFile.read(buffer)) &gt; 0) { toFile.write(buffer, 0, length); System.out.println("Reading &amp; writing the file...."); } } catch (Exception e) { System.out.println("Error in copy1 file :" + e.toString()); } // Close the streams finally { try { if (toFile != null) { try { toFile.flush(); } finally { toFile.close(); } } } catch (Exception e) { System.out.println("Error in copy2 file :" + e.toString()); } finally { if (fromFile != null) { fromFile.close(); System.out.println("File copied successfully....."); } } } } public static void copyFile(String fromFile, String toFile) throws IOException { copyFile(new FileInputStream(fromFile), new FileOutputStream(toFile)); } // Open the database public void openDataBase() { String myPath = DB_PATH; try { myDataBase = SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READWRITE); System.out.println(myDataBase.toString() + " Database found....................!!!!!!!"); dbfnd = true; } catch (Exception e) { System.out.println("Database not found....................!!!!!!!"); // TODO: handle exception dbfnd = false; } } public SQLiteDatabase getReadableDatabase() { myDataBase = SQLiteDatabase.openDatabase(DB_PATH, null, SQLiteDatabase.OPEN_READONLY); return myDataBase; } public SQLiteDatabase getWritableDatabase() { myDataBase = SQLiteDatabase.openDatabase(DB_PATH, null, SQLiteDatabase.OPEN_READWRITE); return myDataBase; } @Override public synchronized void close() { if (myDataBase != null) myDataBase.close(); super.close(); } @Override public void onCreate(SQLiteDatabase db) { } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { } public Cursor get_Data(String selCat) { chk = null; try { chk = myDataBase.rawQuery( "select Image,Price,Category from shoe_info where Category='" + selCat + "'", null); } catch (Exception e) { Log.e(TAG, "Error in getshoeinfo"); e.printStackTrace(); return null; } return chk; } public Cursor get_DataImage(String pImage) { // TODO Auto-generated method stub chk = null; try { chk = myDataBase.rawQuery( "select Image,Price,Category from shoe_info where Image='" + pImage + "'", null); } catch (Exception e) { Log.e(TAG, "Error in getshoeinfo"); e.printStackTrace(); return null; } return chk; } //This code is not working public void put_DataImage(String pImage, String price, String id) { // TODO Auto-generated method stub chk = null; try { System.out .println("insert into shoe_info(Image,Price,Category) values('" + pImage + "','" + price + "','" + id + "');"); myDataBase .execSQL("insert into shoe_info(Image,Price,Category) values('" + pImage + "','" + price + "','" + id + "');"); } catch (Exception e) { Log.e(TAG, "Error in getshoeinfo"); e.printStackTrace(); } } public void put_DataToCart(String image, String price, String pCat) { // TODO Auto-generated method stub Log.i(TAG, "Insert to mycarttttttttttttttttttt"); try { System.out .println("insert into mycart (Image,Price,category) values('" + image + "','" + price + "','" + pCat + "');"); myDataBase .execSQL("insert into mycart(Image,Price,category) values('" + image + "','" + price + "','" + pCat + "')"); } catch (Exception e) { Log.e(TAG, "Error in put_DataToCart"); e.printStackTrace(); } } public Cursor get_DataFromCart() { chk = null; try { System.out.println("select Image,Price,category from mycart"); chk = myDataBase.rawQuery( "select Image,Price,category from mycart", null); } catch (Exception e) { Log.e(TAG, "Error in getshoeinfo"); e.printStackTrace(); return null; } return chk; } </code></pre> <p>}</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload