connecting to oracle rdb...
TRANSCRIPT
![Page 1: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/1.jpg)
1
Oracle Rdb Technical ForumsConnecting to Oracle Rdb
from .NETJim Murray
Oracle New England Development Centre
![Page 2: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/2.jpg)
Agenda
• .NET• Connectivity Overview• ADO.NET Overview• Oracle Data Provider for .NET• Oracle Rdb Data Provider for .NET
![Page 3: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/3.jpg)
3
Microsoft .NET• Connecting applications over the web
– W3C standardized XML Web Services– Loosely-coupled distributed architecture– Core set of technologies– Make as much use of CLIENT processing
power as possible
![Page 4: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/4.jpg)
4
Microsoft .NET (cont.)• Core components
– .NET Enterprise Servers– .NET Smart Clients– XML Web services– Developer tools
• Technologies– Common Language Runtime (CLR)– .NET class libraries– ASP.NET
![Page 5: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/5.jpg)
5
Microsoft .NET (cont.)
• Framework ( similar to J2EE )– Net(Sockets) , Data (ADO.NET)– Namespaces , Collections , Configuration– DirectoryServices, EnterpriseServices (COM+)– Globalisation ,Reflection, Remoting,
Serialisation,Security,Threading– Web,XML
![Page 6: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/6.jpg)
6
.NET data access
ClientApplication
ADO.NET API server
Proprietary API
.NET Web Services
.NET data source
![Page 7: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/7.jpg)
7
Client Connectivity
• From Open/VMS– SQL precompilers/ SQLMOD/Interactive SQL– SQL/Services– JDBC
• From Desktop– SQL/Services– ODBC– JDBC– ADO.NET
![Page 8: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/8.jpg)
8
SQL/Services
• SQL/Services API• ODBC• OCI Services• V7.2 now available
![Page 9: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/9.jpg)
9
SQLSRV ClientArchitecture
Client using SQL/Services client API directly
ClientApplication
SQL/ServicesClient API
server
![Page 10: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/10.jpg)
10
SQL/Services Clients
• OpenVMS• Microsoft Windows 2000/98/95/NT• Microsoft Windows XP/ME from V7.2• Tru64 Unix• Red Hat Linux from V7.1.6
![Page 11: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/11.jpg)
11
SQLSRV ClientArchitecture
serverClient
ApplicationODBC forOracle Rdb
SQL/ServicesClient API
Client using ODBC for Oracle Rdb
![Page 12: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/12.jpg)
12
ODBC Clients
• Windows 2000/98/95/NT/XP
![Page 13: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/13.jpg)
13
OCI Client Architecture
Client
Server
OCI ClientApplication Oracle Net
![Page 14: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/14.jpg)
14
OCI Clients
• Oracle Client– IBM AIX-5L– HP-UX– All Microsoft Windows platforms– Linux– Solaris
• Oracle Instant Client– Clients as above– Macintosh OSX– Smaller client footprint
![Page 15: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/15.jpg)
15
JDBC Architecture
ClientApplication
JDBC API
server
![Page 16: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/16.jpg)
16
JDBC Drivers
ODBC C Library
OCI C Library Java Sockets
Oracle Pure Java
Driver
Vender independent
Drivers written by
venderDynamic SQL
Javasoft ODBC OracleOCI OracleThin rdbNative
JDBC Class Library
rdbThin
![Page 17: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/17.jpg)
17
JavasoftODBC
ODBC C Library
OCI C Library Java Sockets
Oracle Pure Java
Driver
Vender independent
Drivers written by
venderDynamic SQL
Javasoft ODBC OracleOCI OracleThin rdbNative
JDBC Class Library
rdbThin
ODBC C Library
ODBC SQL/Services
![Page 18: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/18.jpg)
18
OracleOCI
Oracle Pure Java
Driver
Vender independent
Drivers written by
venderJavasoft ODBC OracleOCI OracleThin rdbNative
JDBC Class Library
rdbThin
ODBC C Library
OCI C Library Java Sockets Dynamic SQL
SQL/ServicesOCI Services
![Page 19: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/19.jpg)
19
OracleThin
Oracle Pure Java
Driver
Vender independent
Drivers written by
venderJavasoft ODBC OracleOCI OracleThin rdbNative
JDBC Class Library
rdbThin
ODBC C Library
OCI C Library Java Sockets Dynamic SQL
ODBC C Library
SQL/ServicesOCI Services
![Page 20: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/20.jpg)
20
RdbThin
Oracle Pure Java
Driver
Vender independent
Drivers written by
venderJavasoft ODBC OracleOCI OracleThin rdbNative
JDBC Class Library
rdbThin
ODBC C Library
OCI C Library Java Sockets Dynamic SQL
ODBC C Library JDBC ThinServer
![Page 21: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/21.jpg)
21
RdbNative
Oracle Pure Java
Driver
Vender independent
Drivers written by
venderJavasoft ODBC OracleOCI OracleThin rdbNative
JDBC Class Library
rdbThin
ODBC C Library
OCI C Library Java Sockets Dynamic SQL
ODBC C Library Java Sockets Dynamic SQL
![Page 22: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/22.jpg)
22
JDBC Clients
• Anywhere JAVA is supported
![Page 23: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/23.jpg)
23
ADO.NET Architecture
ClientApplication
ADO.NET API
server
![Page 24: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/24.jpg)
24
ADO.NET Clients
• Microsoft Windows 2000/98/NT/ME/XP
![Page 25: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/25.jpg)
25
ADO.NET
• Microsoft evolution of the ADO dataaccess model
• Scalable• Stateless• XML
![Page 26: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/26.jpg)
26
ADO .NET
JDBC Class LibrarySystem.Data
Dataset
ADO.NET
UI
DataAdapter
Command
Connection
DataReader
Dataview
![Page 27: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/27.jpg)
27
DataSet
• Data Containers (Caches)• Store data for application use• Data and Metadata
Tables, Rows Columns, Relations
• Populate , Navigate, Update• Can be disconnected from data source
![Page 28: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/28.jpg)
28
DataView
• designed for use by UI objects• bound to DataSet• Customized views of DataSet
![Page 29: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/29.jpg)
29
DataProvider
• Connects to the database on behalfof ADO.NET–Connection–Command–DataAdaptor–DataReader
• Provided by Microsoft and third partyVendors
![Page 30: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/30.jpg)
30
ODBC DataProvider for.NET
JDBC Class LibrarySystem.Data
Dataset
ADO.NET
UI
DataAdapter
Command
Connection
DataReader
Dataview
SQL/Services(ODBC)
![Page 31: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/31.jpg)
31
ODBC DataProvider for.NET
• Client Side– Standard Microsoft ODBC .NET data
provider• Server Side
– Access via SQL/Services & ODBC• Available now
![Page 32: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/32.jpg)
32
Oracle DataProvider for.NET
JDBC Class LibrarySystem.Data
Dataset
ADO.NET
UI
DataAdapter
Command
Connection
DataReader
Dataview
SQL/Services(OCI Services)
![Page 33: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/33.jpg)
33
Oracle DataProvider for.NET
• Client Side– Standard Oracle .NET data provider
• Server Side– Access via SQL/Services OCI Service
• Available now
![Page 34: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/34.jpg)
34
Oracle Rdb DataProviderfor .NET
JDBC Class LibrarySystem.Data
Dataset
ADO.NET
UI
DataAdapter
Command
Connection
DataReader
Dataview
SQL/Services(TCP/IP)
JDBC Thin Server(TCP/IP)
![Page 35: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/35.jpg)
35
Oracle Rdb DataProviderfor .NET
• Client Side– Standard .NET data provider API– Supplied as Installable library
• Server Side– Access via SQL/Services or– Access via Oracle JDBC for Rdb Thin Servers
• Beta test Q4 CY06
![Page 36: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/36.jpg)
36
DataProvider for .NET
JDBC Class LibrarySystem.Data
Dataset
ADO.NET
UI
DataAdapter
Command
Connection
DataReader
Dataview
![Page 37: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/37.jpg)
37
DataProvider for .NET
JDBC Class LibrarySystem.Data
Dataset
ADO.NET
UI
DataAdapter
Command
Connection
DataReader
Dataview
![Page 38: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/38.jpg)
38
CONNECTION
• Opens up a connection to the data source• Explicit
– conn.OPEN()• Implicit
– When using a DataAdapter
![Page 39: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/39.jpg)
39
CONNECTION C# example
OracleConnection myConn = new OracleConnection ("DataSource=myEMP; UserId=netUser ; Password=netUser",
RdbConnection myConn = new RdbConnection ("Server=localhost:1701;
Database=diske:[regtest]mf_personnel;
User ID=netUser; Pwd=netUser;");
myConn.Open();
![Page 40: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/40.jpg)
40
DataProvider for .NET
JDBC Class LibrarySystem.Data
Dataset
ADO.NET
UI
DataAdapter
Command
Connection
DataReader
Dataview
![Page 41: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/41.jpg)
41
COMMAND
• Issues command to the underlying datasource
• Creates results stream• methods
– ExecuteReader– ExecuteNonQuery– ExecuteScalar
![Page 42: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/42.jpg)
42
COMMAND C# exampleString sql = “select * from employees”;
OracleCommand cmd = newOracleCommand(sql,myConn) ;
RdbCommand cmd = newRdbCommand(sql,myConn) ;
OracleDataReader dr = cmd.ExecuteReader();RdbDataReader dr = cmd.ExecuteReader();
// process the resultset(s) here
![Page 43: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/43.jpg)
43
ExecuteReader C#String sql = “select lastname from employees where employee_id = :id”,conn);
OracleCommand command = new OracleCommand(sql, conn);RdbCommand command = new RdbCommand(sql, conn);
command.Parameters.Add(“id", “00165");command.Prepare();OracleDataReader reader = command.ExecuteReader();RdbDataReader reader = command.ExecuteReader();while(reader.Read()){ Console.WriteLine(“name “+ reader.GetString(0) );}reader.Close();
![Page 44: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/44.jpg)
44
ExecuteNonQuery C++void insertDepartment( RdbConnection* conn, String* deptNbr, String*
deptName ){ RdbCommand* cmd = new RdbCommand(); cmd->Connection = conn; try { cmd->CommandText = String::Format( S"insert into departments ( department_id, department_name ) values( {0}, '{1}' )", deptNbr, deptName ); cmd->CommandType = CommandType::Text; cmd->ExecuteNonQuery(); } catch(RdbException* e1 ) { Console::WriteLine( "Insert error: {0}",e1->Message->ToString() ); } cmd->Dispose(); }
![Page 45: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/45.jpg)
45
ExecuteScalar C++void countDepartments( OracleConnection* conn ){ RdbCommand * cmd = new OracleCommand(); cmd->Connection = conn; try { cmd->CommandText = S"select count(*) fromdepartments";
cmd->CommandType = CommandType::Text; Object* numberOfDepartments = cmd->ExecuteScalar(); Console::WriteLine( S"Number of Departments: {0}", numberOfDepartments ); } catch ( OracleException* e1 ) { . . .
![Page 46: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/46.jpg)
46
DataProvider for .NET
JDBC Class LibrarySystem.Data
Dataset
ADO.NET
UI
DataAdapter
Command
Connection
DataReader
Dataview
![Page 47: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/47.jpg)
47
DataAdapter
• Methods + Properties to associate DataSetwith data source
• Retrieve data from data source• Save data into data source• Connect to DB when it needs to fill DataSet
or update DB from DataSet changes
![Page 48: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/48.jpg)
48
DataProvider for .NET
JDBC Class LibrarySystem.Data
Dataset
ADO.NET
UI
DataAdapter
Command
Connection
DataReader
Dataview
![Page 49: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/49.jpg)
49
DataReader
• For large amounts of read only data• read-only, forward-only stream returned
from the database• Only one record at a time is ever present in
memory
![Page 50: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/50.jpg)
50
Using Oracle Data Provider
• SERVER SIDE– Install and setup Oracle SQL/Services– Create OCI Service
• CLIENT SIDE– Install Oracle 10g Data Provider for .NET– Define OCI service in TNSNAMES.ORA
![Page 51: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/51.jpg)
51
TNSNAMES.ORA
MY_MFPER =(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP) (HOST = MYAXP.MYCOMPANY.COM) (PORT = 1521) ) (CONNECT_DATA =
(SERVER = DEDICATED)(SERVICE_NAME = MFPER) )
)
![Page 52: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/52.jpg)
52
Using Oracle Rdb DataProvider
• SERVER SIDE – SQL/Services– Install and setup Oracle SQL/Services– Create Service
• SERVER SIDE – Thin Server– Install Oracle JDBC for Rdb– Start server
• CLIENT SIDE– Install Oracle Rdb Data Provider for .NET
![Page 53: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/53.jpg)
• White paper on Rdb and .NET• www.oracle.com/rdb• metalink.oracle.com• http://www.hp.com/products/openvms• [email protected]
For More Information
![Page 54: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/54.jpg)
Q U E S T I O N S
A N S W E R S&
![Page 55: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/55.jpg)
![Page 56: Connecting to Oracle Rdb fromdownload.oracle.com/.../rdb/pdf/forums_2006/rdbtf06rs_06_connectdot… · Agenda •.NET •Connectivity Overview •ADO.NET Overview •Oracle Data Provider](https://reader031.vdocument.in/reader031/viewer/2022020104/5ba13d6509d3f2716b8beb61/html5/thumbnails/56.jpg)
56
.NET examplevoid insertDepartment( OracleConnection* conn, String* deptNbr, String*
deptName ){ OracleCommand* cmd = new OracleCommand(); cmd->Connection = conn; try { cmd->CommandText = String::Format( S"insert into departments ( department_id, department_name ) values( {0}, '{1}' )", deptNbr, deptName ); cmd->CommandType = CommandType::Text; cmd->ExecuteNonQuery(); } catch(OracleException* e1 ) { Console::WriteLine( "Insert error: {0}",e1->Message->ToString() ); } cmd->Dispose(); }