Visual Basic with Oracle: need Provider OLE DB for Oracle - vb.net

How can I add Microsoft Provider OLE DB for Oracle. I had Microsoft ODBC for Oracle, but I want to add a provider mentioned above.

If I understood your question correctly,
http://www.connectionstrings.com/
will usually help you.
You need (if I remember correctly) OraOLEDB.

Microsoft Provider oledb for Oracle
Means that the connection string will be
Provider=msdaora;Data Source=MyOracleDB;User Id=myUsername;Password=myPassword;
Replace Data Source, user name and password as per your configuration.

Related

SQL - how to read MSDASQL Provider options

I need to write a tool in vb.net that check if Provider Options(Dynamic parameter, Nested queries...) in SQL Server Management Studio, Server Objects > Linked Servers > Providers > MSDASQL are true or not.
Is it possible use a query or something else?
Provider Options
Thanks!
There is a registry key for that: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\"Instance name"\Providers\MSDASQL
Thank you anyway!

Connection string to a SQLite Database using ADODC/ADODB

Can ADODC/ADODB be used to connect to SQLite?
If Yes- what is the connection string that can be used?
If No- is it only to connect MS Provided DataBases?
There is a reference that can be used? SYSTEM.DATA.SQLITE (It is not efficient)
Can you suggest me any other references (If not ADO)?
I want to use VB.NET to connect to a SQLite backend.
I Use ADODB Recordset to connect on SQLite database. For that You need this provider and
"DRIVER=SQLite3 ODBC Driver;Database=" & BasePath
for the connection string.
Beware of some restrictions : SQLite has no defined type for each field. Therefore if you misspell a date format or float, the provider with give you an error when you try to update the record.

Error while connecting with QRemote using QODBC

Getting this error in SQL Server at a time of connecting to QREMOTE using QODBC
OLE DB provider "MSDASQL" for linked server "QREMOTE" returned message "Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.
Please go to QODBC Setup screen --> Advanced tab --> Maximum Field Name Length --> Set " Maximum Field Name Length" to 70.
Also, Please Configure MSDASQL (Microsoft OLE DB Provider for ODBC Drivers)
[Note: MS SQL Express Edition do not have this setup options!!! ]
The OLE DB provider options for managing linked queries can be set in SQL Server Management Studio. In Object Explorer , right-click the provider name and select Properties for MSDASQL.
http://support.flexquarters.com/esupport/newimages/QRemoteSQLServer64Bit/image025.png
Dynamic parameter should be checked to allow parameter queries. Level zero only should be checked to allow four part naming to work. Allow InProcess should be checked to help performance.Non transacted updates should be checked if you want to be able to update QuickBooks data. Index as access path should be checked to help performance. Disallow adhoc accesses should be unchecked to allow OPENQUERY to function.
http://support.flexquarters.com/esupport/newimages/QRemoteSQLServer64Bit/image027.jpg
I would also like to suggest you to refer below mentioned link:
http://support.flexquarters.com/esupport/index.php?/Default/Knowledgebase/Article/View/2458/52/how-to-create-link-server-with-ms-sql-200520082012-64-bit-using-qodbcqremote
If you are still facing issue please create a support ticket at http://support.qodbc.com

SQL Server 2005: Invalid object name exception

In VS2005, I am using a DLL which accesses a SQL Server. The DLL returns a SQLException
Invalid object name 'tableXYZ'
but tableXYZ is a table in the database.
Should it be looking for dbo.tableXYZ instead? Is this a permissions issue with the login being used?
This could be an issue with the owner of the tableand permissions.
for example the table owner may be dbo so the full table name will be dbo.TableXYZ The user you connect as, could be for example SQLUser may not have access to the dbo schema. So can only access tables such as SQLuser.TableXYZ
I'd check the permissions that you use to connect to the database.
Using dbo.tableXYZ makes it clearer what you want - the tableXYZ in the default dbo schema. There could be a tableXYZ in another schema, too - then SQL Server might not know which one you want.
And it could most definitely be a permissions issue. If you connect to that database in SQL SErver Mgmt Studio as that user - can you see that tableXYZ table??
UPDATE: does the DLL require a specific connection string, that you might not have copied into your calling app's app.config file?? DLL's in .NET can't really have their own mylibrary.dll.config - it will not be read by .NET by default.
you have to use the databasename in your connection-string - otherwise it would just connect und you have to use dbo.databasename.tableXYZ.
you can find the various connection-strings here
As a starting point, you could turn on an SQL Server Profiler trace, to see how the DLL is connecting to the database. e.g. you should be able to see what credentials are being used. You could also confirm to make sure the code is connecting to the right database etc.

MS SQL Server 2008 "linked server" to Oracle : schema not showing

I have a Windows 2008 Server (x64) running Microsoft SQL 2008 (x64) and I'm creating a Linked Server connection to an Oracle server. I'm able to make the connection, but I cannot see any information regarding which schema a table belongs to.
In SQL 2005, my linked servers show the schema information as I would expect.
Does anyone know how to resolve this issue? Is it an issue with the provider, OraOLEDB.Oracle?
Any help or pointers would be appreciated.
#Boojiboy - When you are looking at the tables via a linked server, there used to be a column for what schema. It appears that in the latest the new Oracle OLEDB drivers don't show this information any longer.
It looks like sp_tables_ex will do the trick, it came from the below article.
--verify tables OK exec sp_tables_ex #table_server = 'LINKED_ORA',
#table_schema='MySchema'
#table_schema is optional. If not
provided, you will get a list of all
tables in all schemas.
http://it.toolbox.com/blogs/daniel-at-work/linking-sql-server-2005-to-oracle-26791
Also in the SQL 08 > Server Objects > Providers
make sure your OraOLEDB.Oracle provider is allowing inprocessing