この記事では、SQL の # と $ の違いを紹介します。一定の参考値があるので、困っている友達が参考になれば幸いです。
#{} はここで使用されます。# を使用する場合:
1。パラメータを渡すために使用されます。SQL では文字列として解析された " " が追加されますここのように role_id = "roleid";
2, #{} は SQL インジェクションを大幅に防ぐことができます;
Extension:
1. 受信データを使用して直接表示します上記のステートメントなどの生成された SQL で、roleid= を使用して、生成された SQL 内の受信データを直接表示します。上記のステートメントなど、roleid={roleId, jdbcType=INTEGER} を使用してから、 SQL の値は解析時に roleId = roleId となり、実行中にエラーが報告されます;
2, ${} メソッドでは SQL インジェクションを防ぐことはできません;
3, $ は通常使用されますデータベース オブジェクト (データベース テーブル名など);
4。#{} を使用できる場合は、#{} を使用するようにしてください。
##注: #mybaties をソートするときに動的パラメーターによる順序を使用する場合は、#{} の代わりに ${} を使用することに注意する必要があります;
関連する推奨事項: 「
mysql チュートリアル以上がSQLの#と$の違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。