2012-01-08 14 views
0

こんにちは私は、Javaとシェルコマンドを使用してアンドロイドでSQLiteビューアで作業しています(コマンドは1行にする必要があります)。レイアウトとビューアを作成して、すべてすべて完璧です。値を長めに押すと、編集テキストにユーザーが新しい値を入力できる場所が表示され、次に大文字を押すと値が更新されます。行番号を持つSQLite UPDATE値/オプション?

私はカラム名、古い値と新しい値、データベース名、テーブル名などを持っていますが、問題はwhere節のようなものを見たことがあるのですが、複数回(これは非常によくそうかもしれない)、正しい行を知らないだろう。

私はsqliteを初めて使ったことが1週間もありませんでした。列名と行番号で列の値を更新する方法はありますか?

テーブルを更新する私のオプションは何ですか?

私も本当にスタンドの下に、これは私は、この(1列)のようなテーブルを持って言うことはありません

sample 
-------- 
0 
0 
0 
1 
0 
1 
1 
0 

どのように1に等しくなるように第三行を更新しますか?私は

sqlite3 DATABASEHERE "UPDATE TABLEHERE SET sample='1' WHERE sample='0'" 

文が行1、2、3、5、及び8について説明ので、行番号を使用する方法がなければならないザ・をした場合は?任意のヘルプ

+0

テーブルのCREATEステートメントを追加できますか? –

+0

このようなテーブルは作成できません。リレーショナル代数(SQLiteのようなリレーショナルデータベースに基づいている)は、関係(またはテーブル)をタプルの集合として定義します。セットであるため、正確に同じ値を持つタプルは区別できません。同じ値と見なされるので、一度保存されるだけの数の行を持つことはできません。 –

+0

私は作成ステートメントを持っていない私は私が自分のデータベースで作業していないので、私はそれを得ることができるとは思わないファイルのブラウザの一部であるすべてのデータベースとの作業私は書くので、このようなテーブルを持つことができないように、 – user577732

答えて

4

SQLiteのための

おかげで、あなたがrowidにアクセスすることができます。したがって、SELECT rowid, col FROM table1と記述してテーブルを更新することができます。UPDATE TABLEHERE SET sample='1' WHERE rowid=3

+0

は、sqliteにそのようなnoobであることを申し訳なく思っていますが、私が推測するところではいくつかのことを始めなければなりません:) – user577732