如何遵守Sonar的规则“应使用SQL绑定机制”

时间:2019-01-30 12:58:04

标签: java postgresql jdbc sonarqube prepared-statement

如何更改以下查询以符合SQL Injection规则

select * from table where modified_on < now()- INTERVAL '" + interval + " seconds'

我无法更改使用Java准备Prepared Statement的查询

 select * from table where modified_on < now()- INTERVAL ? seconds

1 个答案:

答案 0 :(得分:4)

您可以将秒数作为参数传递,并将其乘以1秒的时间间隔

select * 
from table 
where modified_on < now() - (? * INTERVAL '1 second')