Bom dia 
Estou tendo problemas com o PreparedStatement.setString(int, String)
Estou querendo parametrizar uma query do SQL Server, mas o que quero parametrizar não é um valor de campo e sim a sintaxe de TOP
connection.prepareStatement("SELECT TOP ? * FROM alunos")
p.setString(1, top);
Mas ele dá o erro: Incorrect syntax near '@P1'
A alternativa que achei foi nao parametrizar e sim concatenar:
connection.prepareStatement("SELECT TOP " + top + " * FROM alunos")
Alguém conheçe uma alternativa menos porca de se fazer isso?
Tentei com PreparedStatement.setInt(int, int) tbm e não deu :?