index > .NET Framework Data Access and Storage > Problem | Oracle 9i Release + With Vb.Net 2005

Problem | Oracle 9i Release + With Vb.Net 2005

Hai

I Am New To Oracle 9i R 2 But I Can Able To Handle Vb.net 2005.How can Able To Connect The Oracle 9i Using vb.net.Is Our Default Dll Support The Oracle 9i Like Imports Sysytem.Data.OracleClient.I Heard That ODP.net Is used This Purpose.I Need To Know Is I Need to Install ODp.net Provider In Client Machine To Run My Application.How can ABle to Run Vb.net with Oracle 9i r2 Without installing ODP.net Provider.If I Create Setup For Vb.net 2005 What Are the Dependencied Need to Run Oracle With VB.net.

I Hvae created An Appliation And I setup the Project Automatically Oracle.Access.Dll. is Bind But I cant able to Run Application.Coz The Error Unable to load Dll OraOps9 .dll

Please Help me Its vEry Urgent

Amnu cherian
You could use .net framework oracle data provider. However, you still need to have Oracle 8i Release 3 (8.1.7) Client or later installed.


This posting is provided "AS IS" with no warranties, and confers no rights.
Bill Lin - MSFT


After installing and configuring the Oracle client software, as Bill mentioned, you will also need to provide sufficient permissions to the Oracle Home folder, especially in the case of an ASP.NET app:

From Oracle's MetaLink:


Problem Description
-------------------


When running an application using the Oracle9i Release 2 (9.2.0.1.0) install
of client software and that attempts to connect to an Oracle database with the
Authenticated User privilege (such as when you use Microsoft's Internet
Information Server (IIS)) through any of the following programmatic interfaces


1. Oracle Provider for OLE DB
2. Microsoft OLE DB Provider for Oracle
3. Oracle ODBC Driver
4. Microsoft ODBC for Oracle
5. Oracle Objects for OLE (OO4O)
6. Microsoft .NET Framework Data Provider for Oracle


you may receive one of the following errors:


(1) Oracle Provider for OLE DB


(a) Error Type: Microsoft OLE DB Service Components (0x80070005)


Access is denied.


(b) OraOLEDB.Oracle Provider is not registered on the local machine


(2) Microsoft OLE DB Provider for Oracle


(a) Error Type: Microsoft OLE DB Provider for Oracle (0x80004005)


Oracle client and networking components were not found. These
components are supplied by Oracle Corporation and are part of the
Oracle Version 7.3.3 or later client software installation. Provider
is unable to function until these components are installed.


(b) Error Type: Microsoft OLE DB Provider for Oracle (0x80004005)


Oracle error occurred, but error message could not be retrieved
from Oracle.


(3) Oracle ODBC Driver


(a) Error Type: Microsoft OLE DB Provider for ODBC Drivers (0x80004005)


Specified driver could not be loaded due to system error 5 (Oracle
in OraHome92).


(4) Microsoft ODBC for Oracle


(a) The Oracle(tm) client and networking components were not found.
These components are supplied by Oracle Corporation and are part
of the Oracle Version 7.3 (or greater) client software installation.


You will be unable to use this driver until these components have
been installed.


(b) Error number: -2147467259


Error Description: [Microsoft][ODBC Driver Manager] Driver's
SQLAllocHandle on SQL_HANDLE_ENV failed


(5) Oracle Objects for OLE


(a) while using a GLOBAL.ASA file


Error Type: Active Server Pages (0x0)


An error occurred while creating object 'OraSession'.


(b) not using a GLOBAL.ASA file


Error Type: Microsoft VBScript runtime (0x800A0046)


Permission denied: 'CreateObject'


(6) Microsoft .NET Framework Data Provider for Oracle


(a) System.DllNotFoundException: Unable to load DLL (oci.dll).
at System.Data.OracleClient.DBObjectPool.GetObject(Boolean&
isInTransaction)
at System.Data.OracleClient.OracleConnectionPoolManager.
GetPooledConnection(String encryptedConnectionString,
OracleConnectionString options, Boolean& isInTransaction)
at System.Data.OracleClient.OracleConnection.OpenInternal
(OracleConnectionString parsedConnectionString, Object transact)
at System.Data.OracleClient.OracleConnection.Open()
at WCWSItemAvailability.ETAAvailability.SingleAvailability(String
ItemNumber, String BusinessUnit, Int32 OrderQty, Int32&
AvailableQty, Int32& OnHandQty, String& ETADate, Int32& Error)
at WCWSItemAvailability.ETAAvailability.XMLAvailability(String
XMLInput)


(7) Other miscellaneous errors


(a) The Specified Module Could Not Be Found


(b) ORA-00604: error occurred at recursive SQL level 1
ORA-12705: invalid or unknown NLS parameter value specified


(c) Unable to load DLL (OraOps9.dll):
...
[DllNotFoundException: Unable to load DLL (OraOps9.dll).]


(d) System Error 998 trying to run ASP page


Solution Description
--------------------


Oracle 9.2 Client software requires that you give the Authenticated User
privilege to the Oracle Home by following these steps:


1. Log on to Windows as a user with Administrator privileges.


2. Launch Windows Explorer from the Start Menu and and navigate to the
ORACLE_HOME folder. This is typically the "Ora92" folder under the
"Oracle" folder (i.e. D:\Oracle\Ora92).


3. Right-click on the ORACLE_HOME folder and choose the "Properties" option
from the drop down list. A "Properties" window should appear.


4. Click on the "Security" tab of the "Properties" window.


5. Click on "Authenticated Users" item in the "Name" list (on Windows XP
the "Name" list is called "Group or user names").


6. Uncheck the "Read and Execute" box in the "Permissions" list under the
"Allow" column (on Windows XP the "Permissions" list is called
"Permissions for Authenticated Users").


7. Re-check the "Read and Execute" box under the "Allow" column (this is
the box you just unchecked).


8. Click the "Advanced" button and in the "Permission Entries" list make
sure you see the "Authenticated Users" listed there with:


Permission = Read & Execute
Apply To = This folder, subfolders and files


If this is NOT the case, edit that line and make sure the "Apply onto"
drop-down box is set to "This folder, subfolders and files". This
should already be set properly but it is important that you verify this.


9. Click the "Ok" button until you close out all of the security properties
windows. The cursor may present the hour glass for a few seconds as it
applies the permissions you just changed to all subfolders and files.


10. Reboot your computer to assure that these changes have taken effect.


Re-execute the application and it should now work.


Explanation
-----------


If you install Oracle9i Release 2 (9.2.0.1.0) on a computer running Windows
with an NTFS partition, the contents of ORACLE_HOME directory will not be
visible to users who are authenticated on that machine. These permissions
were not set properly when the software was installed.


Applications that were working fine with previous versions of Oracle software
will stop working when they upgrade to Oracle 9.2.


NOTE: The application will continue to work if the user has logged onto the
machine as an Administrator.


Any application that is using the Authenticated User privilege will not work.
A notable example would be IIS which might service some of the requests based
on the Authenticated User privileges.


To demonstrate the problem in further detail, you can log on to the operating
system as an authenticated machine user. You won't be able browse the contents
of the ORACLE_HOME directory demonstrating your inability to load any Oracle DLLs
or make a connection.


Additional Information
----------------------


The above error messages may not only be encountered when using Oracle 9.2
client software but may also exists when running into general permissions
issues using third party products on a Windows platform.





Paul ~~~~ Microsoft MVP (Visual Basic)
Paul P Clement IV

Paul, I have a question regarding Oracle Objects (OO4O). I have seen many examples of vb6 with OO4O but haven't seen any examples for using OO4O with VB.Net. Any help in this matter will be appreciated.

I have a stored procedure in oracle that has 4 out parameters of type "pl/sql table" and would like to get them using vb.Net code. If you could think of any solution, please reply.

thanks

ugs75




ugs
ugs75


I haven't use OO4O with Visual Basic.NET/2005 but since it implements COM I would think that you could use interop. Have you tried running VB 6.0 sample code through the conversion wizard?

AFAIK, the PL/SQL table type is not supported as a parameter to a stored procedures when using either the Microsoft or Oracle .NET provider. The closest replacement would be a ref cursor.




Paul ~~~~ Microsoft MVP (Visual Basic)
Paul P Clement IV

Paul

I have seen this solution in a lot of places but it hasn't worked for me. I am currently running Visual Studio 2005 and SQL Server 2005 on a workstation (XP Pro SP2)to carry out testing for an upgrade path for our current reporting strategy.

I am able to build, preview and deploy the reports in Visual Studio, however as soon as I run the report in reporting services under IIS I get the following error.

  • An error has occurred during report processing.
    • Cannot create a connection to data source 'metpro'.
      • System.Data.OracleClient requires Oracle client software version 8.1.7 or greater.

I have carried out the orcale home folder security solution with no effect. I am not using the wondows integrated security option either in VS2005. It looks to me like the oracle client installed with oracle 9i on the workstation is not being used / pointed to. The path has been set to ensure this is not the case, so I am at a loss as to why I am still getting this error, any ideas?

____MAGE
Thanks Paul, it helped me a lot
Kaushik Raha
reply 7

You can use google to search for other answers

 

More Articles

• Using A Variable In An Excel Query For VB.NET
• How to retrieve value from UDT column written using CLR Integrati...
• Walkthrough: Creating a Master-Detail Windows Form
• Tableadapter Update
• ExecuteNonQuery not working within CLR Stored Procedure
• QUERY written in MS Access does not work with adodb
• Same Problem on using System.Transactions
• suggestion on DB design
• -Using Sproc to insert rows in the DB and the Sproc returns ident...
• So Many ADO Data Providers Which Should I Use?
Bookmark and Share
Welcome to Bokebb   New Update  
 

New Articles

• Help: UInt32 vs Int32 as foreign and pri
• VB.Net How to make DataColumn of Image t
• ADO.NET vNext : System.Data.DataRowView
• Internal .Net FrameWork Data Provider Er
• Unable to cast object of type 'System.Ob
• interacting applications
• DataSet thread safety
• sqldatareader?
• Sproc SELECT and sproc INSERT
• EXE (client PC) don´t show null values
• Fulfill inner joins and queries in a 3-t
• c#.net: Unable to update records with sq
• analysis services 2005 tutorial
• ODBC trace problem and fix
• SQL Database Shema Update

Hot Articles

• sqlserver 2005 connection with vb expres
• How do I change the location of "|D
• Joined tables, update database with many
• Load image column from database into ima
• Client Server Application question, Plea
• mapping issue with sql executenonquery m
• Which Method is Better for Transferring
• table adapters - update
• InsertCommand of a SqlDataAdapter with m
• Interesting behavior causing: "Ther
• How can i change ConnectionString at run
• ADO.Net Performance
• Trusted_Connection Problem with VS2005
• when a new row is inserted to SQL DATA T
• OCI-22053: overflow error caused when re

Recommend Articles

• Single DateSource - Multiple Databases
• DataGridView Detail Row Saving
• Sample Code
• return output Inserted.ColName value int
• The type initializer for 'System.Data.Sq
• XML Schema Help with FIX 4.4
• i need help with passing parameters in t
• Reading an OLE Object field in a MS Acce
• System.NullReferenceException: Using Dat
• Help!!! Fail to update Oracle CLOB colum
• high performance ADO.NET
• need help inserting into a dbf file
• ExecuteReader requires an open and avail
• Sql server 2005 ==> 1000 times slowe
• Read-only database problem after site in