Articles of sql

在Android中使用预准备语句查询?

在Android中, android.database.sqlite.SQLiteStatement允许我在SQLite中使用android.database.sqlite.SQLiteStatement准备语句来避免注入攻击。 它的execute方法适用于创建/更新/删除操作,但似乎没有任何方法可用于返回游标等的查询。 现在在iOS中我可以创建sqlite3_stmt*types的sqlite3_stmt*准备语句并将它们用于查询,所以我知道这不是SQLite的限制。 如何在Android中使用预准备语句执行查询?

三个表上的Ormlite内连接

我想在三个表上创建一个内连接,例如: SELECT C.Description, D.ItemDescription FROM OrderDetailStatement AS D INNER JOIN OrderHeaderStatement AS H ON H.OrderHeaderStatementRefID = D.OrderHeaderStatementRefID INNER JOIN customers AS C ON H.CustomerRefID = C.CustomerRefID WHERE (D.MixedValue > 1000) 但我有点困惑,你能不能给我一个演练? 提前致谢

android,如何在sqlitedatabase中执行sql文件

我有“food_db.sql”文件存储在/ res / raw文件夹中,它有大量的“插入”。 我的问题是如何执行该文件并将数据导入我的Android应用程序中的sqlite数据库? 这是我的数据库代码。 任何建议? private static class DbHelper extends SQLiteOpenHelper{ public DbHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); // TODO Auto-generated constructor stub } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(“CREATE TABLE ” + DATABASE_TABLE + ” (” + KEY_ROWID + ” INTEGER PRIMARY KEY AUTOINCREMENT, ” + KEY_NAME + ” TEXT […]

如何通过游标获取android中的Timestamp列值

如何通过游标从数据库列获取Timestamp值并将其存储在android sdk中的Timestampvariables中。 我使用java.sql.Timestamp,sqlite数据库中的值是TIMESTAMPtypes。 我创建了一个具有所有字段作为数据库列名的类,并希望在从数据库中读取记录后创建新对象。

sqlite中的错误“DROP TABLE IF EXISTS”android

所以我在我的DBAdapter类中有一个问题,它只是在我尝试打开数据库时崩溃:从LogCat我想问题是在onUpgrade函数中: public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { Log.w(“SingleDBAdapter”, “Upgrading database from version ” + oldVersion + ” to ” + newVersion + “, which will destroy all old data”); db.execSQL(“DROP TABLE IF EXISTS “+DATABASE_TABLE); onCreate(db); } } 这是错误: 07-28 11:32:49.443: E/Database(1244): Failure 1 (near “122”: syntax error) on 0x2435b0 when preparing ‘DROP […]

连接到外部数据库 – Android应用程序

我正在为我的第三年项目撰写申请。 该应用程序将需要与外部mySQL数据库进行交互。 应用程序将从数据库中检索数据并将其显示给ListView中的用户。 我很清楚应用程序将具有哪种function。 我也花了很多时间使用ListViews和本地SQLite数据库。 我还对HttpUrlConnection类进行了一些研究。 我只是想知道是否有人能够提供一些关于我如何访问这个外部数据库的指导? 它是否会让我不得不编写一个Web服务来处理交易? 如果是这样,那将涉及到什么,因为我还没有在我的课程中遇到过网络服务。 任何建议将不胜感激。 我的应用程序也适用于ICS v4.0.4。 感谢大家!

如何在Eclipse的Eclipse Debug模式下查看SQL数据库

我正在寻找一种方法来查看实时(我调试)我的SQL数据库中的内容。 有谁知道如何做到这一点? 我试过通过variables选项卡查看,但似乎找不到任何东西。

房间没有按所需顺序插入

我想按照数组的排序方式在数据库中插入数据。 我尝试使用@Insertvoid insert(BaseQuote… baseQuote);对象@Insertvoid insert(BaseQuote… baseQuote); 在for循环中,我尝试先删除数据库中的数据,然后再将其插入工作。 我试过了 @Insert(onConflict = OnConflictStrategy.REPLACE) void insertAll(List baseQuote); 但仍然没有…… 数组im插入应该像这个[‘c’ , ‘a’ , ‘b’]但是在查询之后就像这样 @Query(“SELECT * FROM BaseQuote”) List getWatchlist(); 结果仍然像这个[ ‘a’ , ‘b’,’c’ ]任何想法?

如何通过ORDER构建一个SQLite查询到GROUP?

我有一个相当有趣的情况。 我有一个充满地址和消息的SQLite数据库(地址不是唯一的;消息是)。 每条消息还有一个与之关联的日期。 我想要做的是选择第一个消息的地址,消息,日期以及与该地址关联的消息数量。 所以,我想,“我只能按地址分组,每个地址只能获得一条消息,然后按日期对它们进行排序,并获取地址列的COUNT。” 我这样做了,它有效……有点儿。 它获取正确的计数,每个地址只获取一条消息,并按日期对它们进行排序 – 但它不会为该地址选择最新的消息。 它似乎是武断的。 例如,我有三条消息(最早到最晚)来自地址Y的A,B,C,以及来自地址Z的三条消息D,E,F。查询可以获取消息B和E, 然后按日期对它们进行排序。 它应该获取消息C和F,并按日期对它们进行排序。 这是我到目前为止: // Expanded version: Cursor cursor = db.query( /* FROM */ “messages_database”, /* SELECT */ new String[]{ “*”, “COUNT(address) AS count” }, /* WHERE */ null, /* WHERE args */ null, /* GROUP BY */ “address”, /* HAVING */ null, /* ORDER […]

在SQLite数据库中加入3个表

我在SQLite数据库中有3个表: 歌曲: _id | name | length | artist_id (foreign key) | album_id (foreign key) 艺术家: _id | name 专辑: _id | name 我需要一个包含以下列的表的查询(在Android应用程序中使用它): _id | name | length | artist_id | artist_name | album_id | album_name 但是,我写了以下查询语句: SELECT Songs._id, Songs.name, Songs.length, Songs.artist_id, Artists.name, Songs.album_id, Albums.name FROM Songs, Artists, Albums WHERE Songs.artist_id = Artists._id AND […]