Oracle Data Provider for Microsoft .NET(ODP.NET)は、Oracle Databaseに対するデータ・プロバイダの実装です。ODP.NETは、Oracle固有のAPIを使用して、すべての.NETアプリケーションからOracleのデータおよび機能への迅速で信頼性の高いアクセスを提供します。また、Microsoftの.NET Frameworkクラス・ライブラリで使用可能なクラスおよびインタフェースも使用および継承します。ODP.NETでは、.NETのネイティブLOBデータ型として、BLOB、CLOB、NCLOBおよびBFILEがサポートされます。
この章では、Oracle XML DBでODP.NETを使用する方法について説明します。この章の内容は次のとおりです。
ODP.NETでは、Oracle XML DBを介して、データベースでXMLがネイティブにサポートされます。ODP.NETのXMLサポートには次の機能があります。
XMLデータをXMLTypeとしてOracle Databaseにネイティブに格納します。
Oracle DatabaseからMicrosoftの.NET環境まで、リレーショナル・データおよびオブジェクト・リレーショナル・データにXMLデータとしてアクセスし、Microsoftの.NET Frameworkを使用してXMLを処理します。
XMLデータを使用して、変更内容をデータベース・サーバーに保存します。
これらの機能には、.NETアプリケーション開発者用に次の拡張機能が含まれています。
OracleCommand、OracleConnectionおよびOracleDataReaderクラスの拡張。次のXML固有のクラスが提供されます。
OracleXmlType
OracleXmlStream
OracleXmlQueryProperties
OracleXmlSaveProperties
例16-1では、データベースから.NETにXMLTypeデータが取り出され、結果が出力されます。
例16-1 .NETへのXMLTypeデータの取出し
//Create OracleCommand and query XMLType
OracleCommand xmlCmd = new OracleCommand();
poCmd.CommandText = "SELECT po FROM po_tab";
poCmd.Connection = conn;
// Execute OracleCommand and output XML results to an OracleDataReader
OracleDataReader poReader = poCmd.ExecuteReader();
// ODP.NET native XML data type object from Oracle XML DB
OracleXmlType poXml;
string str = ""; //read XML results
while (poReader.Read())
{
// Return OracleXmlType object of the specified XmlType column
poXml = poReader.GetOracleXmlType(0);
// Concatenate output for all the records
str = str + poXml.Value;
} //Output XML results to the screen
Console.WriteLine(str);
|
関連項目: Oracle XML DBに対するOracle .NETサポートの詳細は、『Oracle Data Provider for .NET開発者ガイド』を参照してください。 |