I need to pull data from an Access .accdb database and put it into a SQL Server table. I am unable to create a connection to the Access database from an SSIS package.
Visual Studio 2010 Pro - development tool.
SQL Server Management Studio 2012 - database tool.
Windows 10 Enterprise – OS on development PC.
Office 365, 64-bit – productivity suite on development PC.
Several articles state to use the “Microsoft Office 12.0 Access Database Engine OLE DB Provider” to create a connection to the Access database. I currently do not have this data provider.
The 2010 version of Visual Studio is a 32-bit product, and therefore needs a 32-bit connection to Access. I have tried to install the “Microsoft Access Database Engine 2010 Redistributable”, but it will not install because I already have the 64-bit version of Access installed.
Any thoughts on how to install the 32-bit Access data provider – in the presence of a 64-bit version of Access.
To install Microsoft Access database engine 32-bit alongside 64-bit installation, you should install it using the passive mode.
Passive mode installation steps
Open the Command Prompt by typing cmd in the Windows search box under the Start menu and selecting cmd.exe
Type the file path and file name of the 32-bit Access Database Engine 2010 install file, followed by a space and /passive (this runs the installation without showing any error messages).
Open the Registry Editor by typing regedit in the Windows search box under the Start menu and selecting regedit.exe
Delete or rename the mso.dll registry value in the following registry key:
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Common\FilesPaths"
More details and screenshots are found in the link below
How to install 64-bit Microsoft Access database engine alongside 32-bit Microsoft Office
Related
I get the following error message when I try to test my connections:
Test connection failed because of an error in initializing provider. The 'OraOLEDB.Oracle.1' provider is not registered on the local machine
I originally had 32 bit and 64 bit version of Oracle 12 client installed on my work machine. I uninstalled the 32bit version, because it was causing some conflicts with another application, but now after uninstalling I can no longer use my oracle connections in SSIS.
I'm using Visual Studio 2017 - I am pretty sure I installed 64bit version of SSDT, but it looks like they install under the 86x programs folder. I can still connect via TOAD, so it looks to be an issue of SSIS not pointing to the 64bit installation, I think. Can I manually set SSIS to point to the 64bit version, or do I need to reinstall 32bit?
TSN_Admin is set to the oracle12c_64 tsnname.ora file. I have also tried using the regsvr32.exe on oraoledb12.dll file, but I get an error message, even after running command prompt as admin:
The Module "OraOLEDB.dll" was loaded by the call to DllRegisterServer failed with error code 0x80070005.
I can reinstall the the 32bit version, but I need to wait for my company's IT department to approve the request first. It could be days before I get a response.
Update 1 - Visual Studio 64-bit
After searching it looks like there is not Visual Studio 64-bit version:
Visual Studio 64 bit?
Initial Answer
I don't know if there is an official documentation for this, but based on my own experience you need to instal oracle client 32-bit on the developpement machine, because SQL Server Data Tools for Visual studio is a 32-bit application and it will not work will work with oracle client 64-bit.
But you can execute .dtsx package without any issue if you are working with oracle 64-bit client, you need to use the appropriate DtExec path:
32-bit
C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\DtExec.exe
64-bit
C:\Program Files\Microsoft SQL Server\100\DTS\Binn\DtExec.exe
While searching, i found many other links that share the same opinion:
Oracle Install for SSIS connectivity (and drivers 32 64 bit)
Oracle Client Provider for OLE DB in SSIS not working
Connecting to Oracle 11g on 64-bit (x64) machine SSIS 2012
Newbi to oracle and its versions and .NET providers, but did some investigation.
I'm trying to add Oracle connection to the visual studio server Explorer (before setting up the Entity Framework 6 for oracle).
System preferences:
Windows 10 enterprise - 64 bit operating system
Visual Studio 2015
Oracle Data Access Components (ODAC) which includes Oracle developer Tools for Visual Studio: ODAC12C - 12.2.0.1 - it is suitable to 64 bit !
The DB is located in a remote machine and I can see the DB objects using the Oracle SQL developer. It uses the TNSNames file to locate the DBs.
when trying to "add connection" in the visual studio server explorer:
Select Data Source: Oracle DataBase
Data Provider:.NET framework data provider for Oracle.
It claims that:
"This provider is deprecated and should not be used. Instead download
Oracle Developer tools for visual studio for comprehensive integration
with Oracle database."
The problem is that the mentioned above reference links to a 32-bit Oracle Data Access Components (ODAC) bundle which includes "Oracle Developer Tools for Visual Studio". The same shXX happens when choosing .NET framework data provider for OLEDB.
Either I don't see the relevant provider in the list or there is a problem.
After inserting Server name, User name and Password in the "Add connection" dialog box, I get this error message:
"Attempt to load Oracle Client libraries threw BadImageFormatException.
This problem will occur when running 64 bit mode with the 32 bit Oracle Client components installed"
What am I doing wrong ?
Is this the way of defining connection string when I have a TNSNames file ?
Microsoft .NET Framework Data Provider for Oracle is different to Microsoft OLE DB Provider for Oracle which is different to Oracle Data Access (which can be Oracle Data Provider for .NET or Oracle Data Provider for .NET Managed Driver or Oracle Provider for OLE DB, depending on which one you installed), see How to connect to Oracle 11 database from . net
Visual Studio 2015 is 32-bit, when you like to connect to an Oracle database directly from Visual Studio Explorer then you have to download/install the 32-bit version of ODAC - and also install 32-bit Oracle Client.
In case you like to use also 64-bit Oracle Client and drivers follow this instruction: BadImageFormatException. This will occur when running in 64 bit mode with the 32 bit Oracle client components installed
I am trying to install Visual basic 6.0 on windows 2012 server, it’s not installing, and if I remove data access components it’s installed successfully. But I am not installed data access component excel reference is missing.
This was also my problem.
I solved it by unchecking the Data Access Components installation in Visual Studio 6 and, instead of that, by installing theAccessDatabaseEngine.exe which is the 32-bit version of Microsoft Access Database Engine 2010 Redistributable
Link to download here: Microsoft Access Database Engine 2010 Redistributable
From the MS Documentation:
The Office System Drivers are only supported under certain scenarios,
including:
Desktop applications which read from and write to various files formats including Microsoft Office Access, Microsoft Office Excel and
text files.
To transfer data between supported file formats and a database repository, such as SQL Server.
Important note: sadly, in my existing applications i had to change my MDAC references, and the connection strings like described below (for new applications this isn't an issue):
If you are an application developer using OLEDB, set the Provider
argument of the ConnectionString property to
“Microsoft.ACE.OLEDB.12.0”
I have installed the db2 drivers from the ibm enterprise connect package. I am able to connect to the db2 datasource (system dsn) when I open visual studio in an admin mode and open the integration package. But I get an sqlstate 58031 when I open visual studio in a non admin mode. What am I missing?
Thanks
I have got it working now. Needed to add the user to the db2users group and also gave the user full access over the db2 directory under programData. (At least that is what I think fixed it)
I have developed a POS System Recently and workin on its deployment.
Application Specifications:
The application is basically a POS system.
Back end = SQL Server 2008 Express R2.
Front End = C#
I also used SMO libraries.
Deployment Method = Click-once.
Target Framework = 4.0.
Development Tool = Visual Studio 2012 RC.
OS = Windows 7 Home Premium.
Used some SQL feature packs like Shared management Objects, CLR types. and others.
The prerequisites are selected and i packaged them also.
In brand new windows 7 the installation was fine. and application is running upto date.
In win XP the installation is fine. but when i start the app. it colses with this error.
SQL Server database is not installed and or not running.
and application quits.
IMPORTNAT NOTE:
THE 'WINDOWS XP SP3 PROFESSIONAL'
ON WHICH I AM TESTING IS INSTALLED ON VIRTUAL MACHINE
In the code i am running some SMO library functions in order to install *.sql script for the application's first time use.
SQL Server 2008 R2 is installed with all of its dependencies. and other feature packs. All the prerequisites are installed on XP.
Can you run SQLServer Management Studio on the XP VM and see SQLServer? If you run the SQLServer Configuration Manager on the VM, and click on SQL Server Services, does it show the service is running?
How do you have the connections configured? Do you have named pipes and TCP/IP enabled for the SQLServer Network configuration? What about the SQL Native Client configuration?
Do you have SQLServer Express ticked as a prerequisite in the ClickOnce deployment? What happens if you run setup.exe? Does it recognize that it's installed?
The SQLServer Express that's installed -- is it a named instance, or did you leave it as ".\SQLExpress" ? Id the connection string being used by the ClickOnce application right?