質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
SQLite

SQLiteはリレーショナルデータベース管理システムの1つで、サーバーではなくライブラリとして使用されている。

解決済

SELECT文でsyntax errorが出ます。なにが間違えているのでしょうか?

edoooooo
edoooooo

総合スコア476

SQLite

SQLiteはリレーショナルデータベース管理システムの1つで、サーバーではなくライブラリとして使用されている。

1回答

0評価

0クリップ

12734閲覧

投稿2017/04/18 12:18

編集2017/04/19 08:33

".": syntax error となっています。このコード内の"."はすべて、他のSQLの文にも使っているため、必要だと思うのですが、errorの原因は"."ではないのでしょうか?

//"."のエラーを解決し、現在新たな問題が出ています。

java

String title1= mList.get(pos).get("title"); String content1=mList.get(pos).get("content"); String data1=mList.get(pos).get("data"); String table2=UserContract.Users.TABLE_NAME; Log.v(title1,data1); String sql="SELECT * FROM " +table2 + " WHERE TITLE= " +title1 + " AND CONTENT ="+ content1 + " AND DATA =" +data1 ; Cursor c =db.rawQuery(sql,null);

//android.database.sqlite.SQLiteException: unrecognized token: "4月19日" (code 1): , というエラーが出ます。

java

String sql="SELECT * FROM UserContract.Users.TABLE_NAME " + " WHERE UserContract.Users.COL_TITLE== title1 " + " AND UserContract.Users.COL_CONTENT == content1 " + " AND UserContract.Users.COL_DATA==data1 "; Cursor c =db.rawQuery(sql,null);

java

E/AndroidRuntime: FATAL EXCEPTION: main android.database.sqlite.SQLiteException: near ".": syntax error (code 1): , while compiling: SELECT * FROM UserContract.Users.TABLE_NAME WHERE UserContract.Users.COL_TITLE== title1 AND UserContract.Users.COL_CONTENT == content1 AND UserContract.Users.COL_DATA==data1 at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method) at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:893) at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:504) at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588) at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:58) at android.database.sqlite.SQLiteQuery.<init>(SQLiteQuery.java:37) at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:44) at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1322) at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1261) at com.example.android.sample.memo.MainActivity$1.onItemClick(MainActivity.java:148) at android.widget.AdapterView.performItemClick(AdapterView.java:298) at android.widget.AbsListView.performItemClick(AbsListView.java:1086) at android.widget.AbsListView$PerformClick.run(AbsListView.java:2859) at android.widget.AbsListView$1.run(AbsListView.java:3533) at android.os.Handler.handleCallback(Handler.java:615) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:213) at android.app.ActivityThread.main(ActivityThread.java:4786) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556) at dalvik.system.NativeStart.main(Native Method)

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

SQLite

SQLiteはリレーショナルデータベース管理システムの1つで、サーバーではなくライブラリとして使用されている。