私が使用しているSQLiteデータベーステーブルは、必要なときにいつでもカラムを追加します。私は、データベースを更新し、ハードコードされた値を更新することを忘れて、列をハードコードしたくありません。どのようにしてテーブルの列の名前をすべて返すことができますか? (可能であればString[]
)AndroidでSQLiteテーブルのすべてのカラムを返します
答えて
ベストあなたはSQLiteDatabase
インスタンスと使用クエリーメソッドを使用している場合
SQLiteDatabase mDataBase;
(some code here...)
mDataBase = getReadableDatabase();
Cursor dbCursor = mDataBase.query(TABLE_NAME, null, null, null, null, null, null);
String[] columnNames = dbCursor.getColumnNames();
columnNames
は、クエリメソッドがヌルを受け入れることを列パラメータの入力として注意することがまた面白いです、列名
列名の一覧は必要ありません。
選択する列のカンマ区切りリストを作成できるように、列名のリストが必要なようです。このような場合は、あなたは通常、あなたの代わりにアスタリスクを使用することができ、あなたのSELECTクエリで列名のリストを配置する場所:
SELECT t.* FROM table AS t ...
:
SELECT * FROM table WHERE ...
またはテーブルがエイリアスが使用されている場合
アスタリスクは「すべての列」を意味します。EDIT:あなたがいずれかの文字列の返された配列を変更してはなりません
Cursor c = db.rawQuery("SELECT * FROM table WHERE 0", null);
try {
String[] columnNames = c.columnNames();
} finally {
c.close();
}
注:あなたは本当に、あなたは、次のコードを使用することができ、テーブルの列名のリストが必要な場合方法:https://code.google.com/p/android/issues/detail?id=3731
なぜ「WHERE 0」が使用されていますか?私たちはなしでできませんか? :O –
を持つ必要があります。 nullを入力すると、すべての列が返されます。
db.query("Table_name",null,COLUMN_ID + "=" + id,null,null,null,null);
指定されたIDを持つ行のすべての列を返します。
ここでメソッド定義を確認できます。
'if(columns!= null && columns.length!= 0){ appendColumns(query、columns); } else { query.append( "*"); } ' – Renatinn
- 1. AndroidのSQLiteテーブルにカラムを追加しますか?
- 2. カラムsqliteのすべての行を更新します。
- 3. カラムとテーブル - SQLite
- 4. テーブル内のすべての「参照」カラムを返すPostgreSQLクエリ
- 5. AndroidのSQLiteは-1を返します
- 6. PostgreSQLストアドプロシージャがすべてのカラムを返します
- 7. Androidデータベース(SQLite)が空のテーブルから空でないカーソルを返します
- 8. SQL Server 2008の選択テーブルのすべてのカラム+カラム値
- 9. すべてのテーブルのSqliteループ
- 10. 2つのsqliteテーブル(Androidアプリ)からすべてのフィールドを返すためのSQLクエリの作成
- 11. SQLiteデータベース内の別のテーブルのカラムとしてテーブルを追加できますか?
- 12. Android SQLite、データベースの複数のテーブル、カラムが作成されていない
- 13. Mysqlカラムがユーザ入力と等しいテーブルのすべての値を返します
- 14. カラム2にすべてのゼロが含まれている場合のみ、カラム1を返します
- 15. PhpMyAdminテーブルが空のカラムを返す
- 16. NpgSQLはテーブルの最初のカラム名を返します
- 17. AJAXでテーブルからすべてのレコードを返します
- 18. Sqlite:各グループの最大値をORDER BYで返しますが、すべての行を返します
- 19. autoincrementカラムはSQLiteテーブルの最後の値を覚えています
- 20. Oracleすべてのテーブルのすべてのカラムを検索する
- 21. sqliteで例外を含むすべてのテーブルを削除します
- 22. PHPがテーブルとカラムの最大値を返します
- 23. subselectステートメントを使用したSQLのSQLiteカラム名がカラム名の前にテーブル名
- 24. AndroidでSQLiteカラムの親和性を取得する
- 25. sqliteテーブルにはカラム名は必要ありませんか? sqliteので
- 26. Androidのすべてのアプリケーションがアクセスできるsqliteデータベースを作成します。
- 27. 私はSQLiteテーブルのintカラムを減らすことができます
- 28. テーブルPL/SQLのすべての行を繰り返します
- 29. AndroidのSQLiteで複数のテーブルからクエリを実行していますか?
- 30. odbcデータベースからすべてのテーブルとすべてのカラムを取得
と特定の列から値を取得する方法を教えてください? – Apurva
カーソルdbCursor = mDataBase.query(TABLE_NAME、新しい文字列[] {YOUR_COLUMN_NAME_1、YOUR_COLUMN_NAME_2、....}、null、null、null、null、null); –
getReadableDatabaseとは何ですか? –