Articles of SQLite

如何删除android sqlite中的单行

我有一个CustomListAdapter在ListView上表示的sqlite数据。单击一行会popup一个alert dialogue ,提示用户从我的活动中的sqlite中删除单行: private void deleteDialog() { AlertDialog.Builder alertDialog = new AlertDialog.Builder(MyCart.this); alertDialog.setCancelable(false); alertDialog.setMessage(“Delete item?”); alertDialog.setPositiveButton(“Yes”, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { myDb.deleteSingleContact(toString()); } }); alertDialog.setNegativeButton(“Cancel”, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { dialog.cancel(); } }); alertDialog.show(); } 在我的DBHelper.java上: public void deleteSingleContact(String title){ SQLiteDatabase db = this.getWritableDatabase(); db.delete(CONTACTS_TABLE_NAME, […]

如何格式化WHERE子句和’?’ 在SQLite查询?

我正在尝试使用内置的SQLite函数,我不知道如何格式化查询。 如何格式化WHERE子句和? 可以去那里: column [] = {“name”}; selectionArg [] = {“john}; Select name from mytable where id = “john” db.query(mytable, column, id = ?, selectionArg, null,null,null); 我不是我可以测试它的地方,但我试图在第一次就把它弄好。 我不确定是不是? 需要”?” 或者如果它是id = + “?” 等等。 我似乎无法find任何格式的例子。

尝试重新打开已经关闭的对象:sqlitequery

所以基本上我两次查询数据库。 我不明白这个错误究竟来自哪里,因为我没有在任何地方关闭数据库。 返回错误的代码就是这样运行的。 我查了一下,我刚看到像我这样的案子。 BeaconHandler pullAllDB = new BeaconHandler(this); try { List beaconsShown = pullAllDB.getAllBeacons(); for (final Beacon bn : beaconsShown) { try { int messageCount = pullAllDB.getMessageCount(); Log.d(“Message”, messageCount + ” Messages Found”); if (messageCount > 0) { //Do Something } else { // Do Nothing } } catch (Exception e) { e.getStackTrace(); Log.e(“Message”, […]

Sqlite如何使用游标获取字符串项

public Cursor getImages(long rowId) throws SQLException { Cursor mCursor = db.rawQuery(“select * from Pictures WHERE id=” + rowId + “;”, null); if (mCursor != null) { mCursor.moveToFirst(); } return mCursor; } 表列“id,pic,comment” 我想把pic和comment的值带到字符串数组。 我的代码是: int i=0; Cursor c1 = db.getImages(memberId); c1.moveToFirst(); while(c1.isLast()){ pictures[i]=c1.getString(1); comments[i]=c1.getString(2); i++; } 这不起作用。

在android中检查sqlite数据库是打开还是关闭

我在DBDriver类中有两个方法来open和close sqlite database ,如下所示。 private SQLiteDatabase database; /** * Open Database to read and write. * * @throws SQLException */ public void open() throws SQLException { database = dbHelper.getWritableDatabase(); } /** * Close opened database. */ public void close() { dbHelper.close(); } 我在我的其他类中使用上面的方法来打开和关闭sqlite database 。 我想识别数据库是打开还是关闭。 我怎么能这样做?

如何从模拟器中删除数据库?

我的应用程序中的数据库时间在模拟器上运行并想要将其删除。 我可以通过shell或其他方法运行任何sqlite查询吗?

更新本地Android数据库

我目前在Android上遇到SQLite数据库问题。 我的应用程序有一个本地数据库,在apk文件中。 当应用程序启动时,它将检查新版本,并在可用时下载全新的数据库(尽管在两个数据库版本之间,更改很少)。 但是现在数据库太大了。 因此,新数据库可用时需要很长时间。 那么解决这个问题的方法呢?

将一列更新为其他两列的总和

我需要用一列作为同一表中其他两列的总和来更新表的每一行 像这样的东西 UPDATE table1 SET table1.column1 =每行的sum(table1.column1 + table1.column2) 我努力了 This is working for me UPDATE table1 SET column1 =(SELECT SUM(column1 + column2) FROM table1 where rowid = 1) WHERE rowid = 1 所以我可以通过首先选择所有rowId迭代每个rowid来做到这一点 for( all rowid as i){ UPDATE table1 SET column1 =(SELECT SUM(column1 + column2) FROM table1 where rowid = i) WHERE rowid […]

如何在android中将数据插入SQLite数据库?

我已经在android中看到了一个使用SQlite的例子…但是在那个特定的例子中,每次运行应用程序时都会插入记录。但是我想只插入一次永久! 任何可能性???

SQLiteDatabase.insertOrThrow不会抛出但不会插入数据

我正在努力熟悉Android及其数据库API。 我创建了一个inheritance自SQLiteOpenHelper的类,这就是我在数据库中创建表的方法 @Override public void onCreate(SQLiteDatabase db) { try { db.execSQL(“CREATE TABLE ” + FUELS_TABLE_NAME + ” (” + “_ID INTEGER PRIMARY KEY AUTOINCREMENT, ” + “DATE_OF_FUELS DATE DEFAULT CURRENT_TIME,” + “SELLER_POSITION TEXT DEFAULT ‘unknown’,” + “AMOUNT REAL” + “);” ); } catch (SQLException e) { Log.e(DATABASE_NAME, e.toString()); } } 用于向DB添加数据的函数是在同一类中实现的以下内容 public void addNewFuel(float amount) […]