从Java调用目录过程执行SSIS包
所以我要做的是调用一个存储过程从Java调用目录过程执行SSIS包,java,sql-server,jdbc,ssis,Java,Sql Server,Jdbc,Ssis,所以我要做的是调用一个存储过程usp\u Something,它包含如下内容 EXEC [SSISDB].[catalog].[create_execution] @folder_name = @f_name, @project_name = @pro_name, @package_name = @pack_name, @execution_id = @exec_id output EXEC [SSISDB].[catalog].[set_execution_p
usp\u Something
,它包含如下内容
EXEC [SSISDB].[catalog].[create_execution]
@folder_name = @f_name,
@project_name = @pro_name,
@package_name = @pack_name,
@execution_id = @exec_id output
EXEC [SSISDB].[catalog].[set_execution_parameter_value] @exec_id, @object_type=50, @parameter_name=N'SYNCHRONIZED', @parameter_value=1
EXEC [SSISDB].[catalog].[start_execution] @exec_id
--SET @output_execution_id = @exec_id
在Java中,我使用SQL Server身份验证与JDBC驱动程序建立连接,试图调用usp\u Something
过程。但我犯了个错误
使用SQL Server的帐户无法启动该操作
认证。使用使用Windows的帐户启动操作
认证
现在,我知道您需要使用Windows身份验证来运行软件包,但是有什么解决方法吗?我被告知不要使用Windows身份验证,因此我需要一种使用SQL Server身份验证的方法,我在项目中使用的是integratedSecurity: jdbc:sqlserver://${db.server};databaseName=${db.name};instanceName=${db.instance};integratedSecurity=true
与db的连接将使用运行java应用程序的同一用户完成。在我的例子中,我以域用户的身份运行spring boot应用程序,该应用程序也被配置为连接到SQLServer并执行存储过程。我在项目中所做的是使用integratedSecurity: jdbc:sqlserver://${db.server};databaseName=${db.name};instanceName=${db.instance};integratedSecurity=true
与db的连接将使用运行java应用程序的同一用户完成。在我的例子中,我以域用户的身份运行spring boot应用程序,它也被配置为连接到SQLServer并执行存储过程。我想这是不可能的。但是,在dba.stackexchange.com上询问这一点可能更好,我猜这是不可能的。但是,最好在dba.stackexchange.com上问这个问题