SSIS package fails with error "If 64-bit driver not installed, run in 32-bit mode"

4

I am receiving the following error when trying to run the package from the Integration Services catalog in SSMS. I changed the 64BitRuntime option to FALSE but it still does not work. The error below is followed by an error that a connection cannot be made to my Excel connection manager. Any suggestions?

Package Error: The requested OLE DB provider Microsoft.Jet.OLEDB 4.0 is not registered. If the 64-bit driver is not installed, run the package in 32-bit mode. Error code: 0x00000000

sql-server
ssis
etl
asked on Stack Overflow Mar 29, 2017 by Scottdg • edited Sep 12, 2020 by Hadi

4 Answers

2

You have to install Microsoft Access Database Engine 2010 Redistributable and
set 64BitRuntime option to FALSE

you can get it from the following link:

More info and details can be found in the following links:

answered on Stack Overflow Mar 29, 2017 by Hadi • edited Mar 30, 2017 by Hadi
2

if you are executing the SSIS package from job , there is an option in job configuration a checkbox "enable 32 bit".

OR

if you are executing the SSIS package from BIDS or SSDT , go to project properties=> Configuration => debugging => turn 64BitRuntime from "True" to "False" as it is set to True by default.

answered on Stack Overflow Mar 30, 2017 by fahad
0

You are attempting to run an SSIS package from the SSISDB catalog and need it to be in 32 bit mode.

The TSQL for such would look like the following

DECLARE @execution_id bigint;
EXEC SSISDB.catalog.create_execution
    @package_name = N'Legacy_DataExport.dtsx'
,   @execution_id = @execution_id OUTPUT
,   @folder_name = N'Legacy_DataExport'
,   @project_name = N'Legacy_DataExport'
,   @use32bitruntime = True
,   @reference_id = NULL;
SELECT
    @execution_id;
DECLARE @var0 smallint = 1;
EXEC SSISDB.catalog.set_execution_parameter_value
    @execution_id
,   @object_type = 50
,   @parameter_name = N'LOGGING_LEVEL'
,   @parameter_value = @var0;
EXEC SSISDB.catalog.start_execution @execution_id;
GO

Of note is the penultimate parameter of the first EXEC where we specify @use32bitruntime = True

From the UI perspective, it looks like

enter image description here

answered on Stack Overflow Mar 30, 2017 by billinkc
-1

Using the built in excel connection manager in SSIS, the package needs to run in 32-bit mode. Switching this:

64BitRuntime option to FALSE

Only allows SSDT to run the package in 32bit mode, but it does not affect how it will run once you deploy it. To run it in 32bit mode from SSMS:

  • If you are right clicking on the package in the Integration Services Catalog and hitting execute, go to the advanced tab of the dialogue and check 32-bit runtime.
  • If you are executing it via a SQL Agent job. In the step, go to configuration > Advanced and check 32-bit runtime.
answered on Stack Overflow Mar 29, 2017 by Mark Wojciechowicz

User contributions licensed under CC BY-SA 3.0