0

MySqlデータベースへのRest呼び出しに問題があります。

私はJSオブジェクトを使用し、JavaScriptバックエンドを使用してrestgetcallで送信します。

    requestParams: {
        pageStart: 0,
        results: 10
    } 

このリクエストのクエリを設定しました

"get-users" : "SELECT * FROM ${_dbSchema}.${_table} LIMIT ${pageStart}, ${results}"

しかし、queryParamsはバックエンドで文字列に変換し、応答でこのエラーが発生します

{"error":500,"reason":"Internal Server Error","message":"DB reported failure executing query SELECT * FROM shema.user LIMIT ?, ? with params: {results=10, pageStart=0} error code: 1064 sqlstate: 42000 message: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''0', '10'' at line 1"}

sql-queryでこの問題を解決できますか?

4

1 に答える 1

0

エラーメッセージから:

{"error":500、 "reason": "Internal Server Error"、 "message":"DBがクエリの実行に失敗したことを報告しましたSELECT* FROM shema.user LIMIT?、?with params:{results = 10、pageStart=0}エラーコード:1064 sqlstate:42000メッセージ:SQL構文にエラーがあります。MySQLサーバーのバージョンに対応するマニュアルで、1行目の「0」、「10」の近くで使用する正しい構文を確認してください。}

LIMIT句の数値は、単一引用符で囲まれているため、数値ではなく文字列として設定されているようです。たとえば''0', '10''、エラー通知の抜粋から、各数値(0および10)が一重引用符'0'とで囲まれている方法など'10'です。

于 2013-01-24T18:49:02.570 に答える