Microsoft Knowledge Base Article
This article contents is Microsoft Copyrighted material.
©2005-©2007 Microsoft Corporation. All rights reserved.
Terms
of Use |
Trademarks
Article ID: 308448 - Last Review: May 13, 2007 - Revision: 2.3
How To Access an Oracle Database by Using the OLE DB .NET Data Provider and Visual C# .NET
This article was previously published under Q308448
On This Page
SUMMARY
This article demonstrates how to use the ADO.NET OLE DB managed provider to access an Oracle database.
Requirements
The following list outlines the recommended hardware, software, network infrastructure, and service packs that you need:
- Microsoft Windows 2000 Professional, Windows 2000 Server, Windows 2000 Advanced Server, or Windows NT 4.0 Server
- Oracle Client tools (installed on the computer)
- Microsoft Visual Studio .NET
This article assumes that you are familiar with the following topics:
- Visual Studio .NET
- ADO.NET fundamentals and syntax
- Oracle connectivity
Steps to Access an Oracle Database
- In Oracle, create a table named TestTable as follows:
Create Table TestTable (c1 char(5));
- Insert data into TestTable as follows:
Insert into TestTable c1 values('Test1');
Insert into TestTable c1 values('Test2');
Insert into TestTable c1 values('Test3');
- Start Visual Studio .NET.
- Create a new Windows Application project in Visual C# .NET.
- Make sure that your project contains a reference to the System.Data namespace, and add a reference to this namespace if it does not.
- Drag a Button control to Form1, and change its Name property to btnTest.
- Use the using statement on the System, System.Data, and System.Data.OleDb namespaces so that you are not required to qualify declarations in those namespaces later in your code.
using System;
using System.Data;
using System.Data.OleDb;
- Switch to Form view, and double-click btnTest to add the click event handler. Add the following code to the handler:
String sConnectionString =
"Provider=MSDAORA.1;User ID=myUID;password=myPWD;
Data Source=myOracleServer;Persist Security Info=False";
String mySelectQuery =
"SELECT * FROM TestTable where c1 LIKE ?";
OleDbConnection myConnection = new OleDbConnection(sConnectionString);
OleDbCommand myCommand = new OleDbCommand(mySelectQuery, myConnection);
myCommand.Parameters.Add("@p1", OleDbType.Char, 5).Value = "Test%";
myConnection.Open();
OleDbDataReader myReader = myCommand.ExecuteReader();
int RecordCount=0;
try
{
while (myReader.Read())
{
RecordCount = RecordCount + 1;
MessageBox.Show(myReader.GetString(0).ToString());
}
if (RecordCount == 0)
{
MessageBox.Show("No data returned");
}
else
{
MessageBox.Show("Number of records returned: " + RecordCount);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
finally
{
myReader.Close();
myConnection.Close();
}
- Save your project.
- On the Debug menu, click Start to run your project.
- Click the button to display the data.
REFERENCES
For additional information, click the article number below
to view the article in the Microsoft Knowledge Base:
176936Â
(http://kbalertz.com/Feedback.aspx?kbNumber=176936/EN-US/
)
INFO: Visual Basic Accessing an Oracle Database Using ADO
For more information about ADO.NET objects and syntax, see the following topic in the Microsoft .NET Framework SDK documentation or MSDN Online:
APPLIES TO
- Microsoft ADO.NET (included with the .NET Framework)
- Microsoft ADO.NET 1.1
- Microsoft Visual C# .NET 2002 Standard Edition
- Microsoft Visual C# .NET 2003 Standard Edition
| kbhowtomaster kbsystemdata KB308448 |
Community Feedback System
Very often, it takes hours to solve a problem. Very often, you've looked high
and low, and have tried a lot of solutions. When you finally found it, chances
are, it was because someone else helped you. Here's your chance to give back.
Use our community feedback tool to let others know what worked for you and what
didn't.
Please also understand that the community feedback system is not warranted to be
correct, it's simply a system that we've built to let people try and help each
other. If something in a feedback response doesn't make sense to you, or you're
not comfortable making changes that the feedback talks about (like registry
edits), please consult a professional.
Thank you for using kbAlertz.com Feedback System.
-- Scott Cate
Be the first to leave feedback, to help others about this knowledge base
article.
(Optional) Name
(Optional)
Public URL Or Email
Comments
No
HTML -- Text Only Please