prepareCallを使用してJDBC接続を介してアプリケーションの役割を設定しようとしています。正常に動作しているように見えますが(つまり、構文的には)、SQLServer2008は次のエラーを返します。
Application roles can only be activated at the ad hoc level
ストアドプロシージャなどからこれを起動するのではなく、JDBC接続から直接起動します。
CallableStatement cstmt = con.prepareCall("{call sys.sp_setapprole(?, ?, ?, ?)}");
//setup all the IN and OUT parameters here
cstmt.execute();
これが機能しない理由について何かアイデアはありますか?