この行はmDatabase.execSQL(sql);
、私に次のエラーを与えます:
{ sqlite returned: error code = 1, msg = near "*": syntax error }
for Delete * from table_name Query
私のSQLクエリは次のとおりです。DELETE * FROM table_name
どうすればこれを解決できますか?
この行はmDatabase.execSQL(sql);
、私に次のエラーを与えます:
{ sqlite returned: error code = 1, msg = near "*": syntax error }
for Delete * from table_name Query
私のSQLクエリは次のとおりです。DELETE * FROM table_name
どうすればこれを解決できますか?
DELETE * FROM table_name
間違ったSQLコマンドです。使用するDELETE from table_name
構文エラーは、基本的にステートメントのスペルが間違っていて、解析できないことを意味します。この場合、エラー メッセージには、このエラーが発生した正確な場所 ("*" 文字) が示されます。このような場合は、データベースのドキュメントにアクセスして、使用しようとしているコマンドの構文が正しいかどうかを確認してください。SQLite の場合はここにあります。そこに DELETE ステートメントに関するドキュメントがあります。ここにリンクがあります。シンタックスをグラフィカルに (シンタックス ダイアグラムまたはレイルロード ダイアグラムと呼ばれる) 表示するので、非常に簡単に理解できます。この場合、前述のとおり、DELETE と FROM の間に「*」を指定することはできません。これは、常に行全体を削除しており、選択した個々の列を削除できないためです。
テーブル全体を削除する必要がある場合は、DROP TABLE IF EXISTS を使用してから、テーブルを再作成できますか