#相当于数据加上双引号,$相当于直接显示数据
- "#"将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。如:
order by #user_id#
, 如果传入的值是111,那么解析成 sql 时的值为order by "111"
, 如果传入的值是 id,则解析成的 sql 为order by "id"
。 - "$"将传入的数据直接显示生成在 sql 中。如:
order by $user_id$
,如果传入的值是 111,那么解析成 sql 时的值为order by 111
, 如果传入的值是 id,则解析成的 sql 为order by id
. - "#“方式能够很大程度防止 sql 注入,”$"无法防止sql注入
- "$"方式一般用于传入数据库对象,例如传入表名
- 一般能用"#“的就别用”$"。