sql >> データベース >  >> RDS >> Mysql

Mysqljsで値をエスケープする

    リンク先のドキュメントページの「クエリ識別子のエスケープ」セクションを参照してください "、これを実行できるはずです:

    mysql.query('SELECT * FROM ?? where name = ?', [this.table, this.votesTable]
    

    ほとんどのSQLフレームワークでは、個々の以外の目的でパラメータを使用することはできません。 。つまりテーブルID、列ID、値のリスト、またはSQLキーワードではありません。 mysqljsライブラリは、識別子とキー/値のペアの引用をサポートしているという点で珍しいです。

    コメントを再確認してください:

    ?? プレースホルダーは識別子用です。識別子は、値とは異なる方法で引用する必要があります。 MySQLでは、文字列値は'string'のように引用されます ただし、識別子はバックティックで引用されます。

    SELECT * FROM `mytable` where name = 'myname'
    

    mysqljsクラスは??を使用します 識別子の特別なプレースホルダーとして、バックティックで引用する必要があることをクラスに伝えることができます。




    1. mysql関数を使用してテーブルを返す方法

    2. テーブルはクラッシュとしてマークされており、修復する必要があります

    3. :OLDおよび:NEW疑似レコードをOracleストアドプロシージャにコピーできますか?

    4. データベースから最も人気のある場所を選択するアルゴリズム