25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.

readme.txt 13 KiB

4 yıl önce
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259
  1. Oracle.ManagedDataAccess NuGet Package 12.1.24160719 README
  2. ===========================================================
  3. Release Notes: Oracle Data Provider for .NET, Managed Driver
  4. September 2016
  5. Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
  6. This document provides information that supplements the Oracle Data Provider for .NET (ODP.NET) documentation.
  7. You have downloaded Oracle Data Provider for .NET from Oracle, the license agreement to which is available at
  8. http://www.oracle.com/technetwork/licenses/distribution-license-152002.html
  9. TABLE OF CONTENTS
  10. *New Features
  11. *Bug Fixes
  12. *Installation and Configuration Steps
  13. *Installation Changes
  14. *Documentation Corrections and Additions
  15. *ODP.NET, Managed Driver Tips, Limitations, and Known Issues
  16. Note: The 32-bit "Oracle Developer Tools for Visual Studio" download from http://otn.oracle.com/dotnet is
  17. required for Entity Framework design-time features and for other Visual Studio designers such as the
  18. TableAdapter Wizard. This NuGet download does not enable design-time tools; it only provides run-time support.
  19. This version of ODP.NET supports Oracle Database version 10.2 and higher.
  20. New Features since Oracle.ManagedDataAccess NuGet Package 12.1.24160419
  21. =======================================================================
  22. 1. ODP.NET can connect to Oracle Database Exadata Express Cloud Service using the following instructions.
  23. http://www.oracle.com/technetwork/topics/dotnet/tech-info/dotnetcloudexaexpress-3112654.html
  24. Bug Fixes since Oracle.ManagedDataAccess NuGet Package 12.1.24160419
  25. ====================================================================
  26. 21111355 LDAP: CONNECTION PERFORMANCE ISSUE WITH LDAP CONFIGURATION
  27. 22652577 CHECKSUM: HIT "ORA-12599" WHILE IT SHOULD BE "ORA-01013" AFTER CANCEL COMMAND
  28. 22936067 ODPMANAGED SSL DOESN'T SUPPORT DN MATCHING
  29. 22995665 ODPM - INCORRECT VALUE OF DATACOLUMN'S READONLY PROPERTY
  30. 23040870 ODPM DOES NOT HANDLE PROMOTION PROPERLY
  31. 23059650 SSL: NTS DOESN'T WORK WITH SQLNET.AUTHENTICATION_SERVICES=(NTS,TCPS)
  32. 23102388 ORA-01461: CAN BIND A LONG VALUE ONLY FOR INSERT INTO A LONG COLUMN MANAGED ODP
  33. 23135026 TTC_HARDEN: BEHAVIOR DIFFERENCE FOR TRANSACTION RESTRICTION IN ODPU&ODPM
  34. 23136980 ODPM: ADAPTER FILL FAIL WITH XMLTYPE WHEN RETURNPROVIDERSPECIFICTYPES=TRUE
  35. 23168763 REFCURSORS IN OUTPUT ARRAY BIND DO NOT RETURN ANY ROWS
  36. 23263802 ODPM: CONNECTION IS NOT LOCKED BEFORE DOING COMMIT/ROLLBACK RPC FOR LOCAL TXN
  37. 23265098 IMPLICITLY RETURNED RESULTSET MISSING VALID REFCURSOR WHEN CONTAINS EMPTY REFCUR
  38. 23317774 ODPM : CURSORS NOT FREED WHEN THE CONNECTION IS BEING CLOSED
  39. 23323754 ODPM: CONNECTIONS DO NOT DRAIN PROPERLY IN DTXN/HA SCENARIO
  40. 23342504 ORA-03137: MALFORMED TTC PACKET FROM CLIENT REJECTED
  41. 23559078 ODPM: UOPF_BER FLAG SHOULD NOT BE SET FOR NON-DML ARRAY BIND OPERATIONS
  42. Installation and Configuration Steps
  43. ====================================
  44. The downloads are NuGet packages that can be installed with the NuGet Package Manager. These instructions apply
  45. to install ODP.NET, Managed Driver.
  46. 1. Un-GAC and un-configure any existing assembly (i.e. Oracle.ManagedDataAccess.dll) and policy DLL
  47. (i.e. Policy.4.121.Oracle.ManagedDataAccess.dll) for the ODP.NET, Managed Driver, version 12.1.0.2
  48. that exist in the GAC. Remove all references of Oracle.ManagedDataAccess from machine.config file, if any exists.
  49. 2. In Visual Studio 2010, 2012, 2013, or 2015 open NuGet Package Manager from an existing Visual Studio project.
  50. 3. Install the NuGet package from an OTN-downloaded local package source or from nuget.org.
  51. From Local Package Source
  52. -------------------------
  53. A. Click on the Settings button in the lower left of the dialog box.
  54. B. Click the "+" button to add a package source. In the Source field, enter in the directory location where the
  55. NuGet package(s) were downloaded to. Click the Update button, then the Ok button.
  56. C. On the left side, under the Online root node, select the package source you just created. The ODP.NET NuGet
  57. packages will appear.
  58. From Nuget.org
  59. --------------
  60. A. In the Search box in the upper right, search for the package with id, "Oracle.ManagedDataAccess". Verify
  61. that the package uses this unique ID to ensure it is the official Oracle Data Provider for .NET, Managed Driver
  62. download.
  63. B. Select the package you wish to install.
  64. 4. Click on the Install button to select the desired NuGet package(s) to include with the project. Accept the
  65. license agreement and Visual Studio will continue the setup.
  66. 5. Open the app/web.config file to configure the ODP.NET connection string and local naming parameters
  67. (i.e. tnsnames.ora). Below is an example of configuring the local naming parameters:
  68. <oracle.manageddataaccess.client>
  69. <version number="*">
  70. <dataSources>
  71. <!-- Customize these connection alias settings to connect to Oracle DB -->
  72. <dataSource alias="MyDataSource" descriptor="(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL))) " />
  73. </dataSources>
  74. </version>
  75. </oracle.manageddataaccess.client>
  76. After following these instructions, ODP.NET is now configured and ready to use.
  77. NOTE: ODP.NET, Managed Driver comes with two platform specific assemblies:
  78. i. Oracle.ManagedDataAccessDTC.dll (for Distributed Transaction Support)
  79. ii. Oracle.ManagedDataAccessIOP.dll (for Kerberos Support)
  80. The Oracle.ManagedDataAccessDTC.dll assembly is ONLY needed if you are using Distributed Trasactions and the
  81. .NET Framework being used is 4.5.1 or lower. If you are using .NET Framework 4.5.2 or higher, this assembly does
  82. not need to be referenced by your application.
  83. The Oracle.ManagedDataAccessIOP.dll assembly is ONLY needed if you are using Kerberos5 based external
  84. authentication. Kerberos5 users will need to download MIT Kerberos for Windows version 4.0.1 from
  85. http://web.mit.edu/kerberos/dist/
  86. to utilize ODP.NET, Managed Driver's support of Kerberos5.
  87. These asssemblies are located under
  88. packages\Oracle.ManagedDataAccess.<version>\bin\x64
  89. and
  90. packages\Oracle.ManagedDataAccess.<version>\bin\x86
  91. depending on the platform.
  92. If these assemblies are required by your application, your Visual Studio project requires additional changes.
  93. Use the following steps for your application to use the 64-bit version of Oracle.ManagedDataAccessDTC.dll:
  94. 1. Right click on the Visual Studio project.
  95. 2. Select Add -> New Folder
  96. 3. Name the folder x64.
  97. 4. Right click on the newly created x64 folder
  98. 5. Select Add -> Existing Item
  99. 6. Browse to packages\Oracle.ManagedDataAccess.<version>\bin\x64 under your project solution directory.
  100. 7. Choose Oracle.ManagedDataAccessDTC.dll
  101. 8. Click the 'Add' button
  102. 9. Left click the newly added Oracle.ManagedDataAccessDTC.dll in the x64 folder
  103. 10. In the properties window, set 'Copy To Output Directory' to 'Copy Always'.
  104. For x86 targeted applications, name the folder x86 and add assemblies from the
  105. packages\Oracle.ManagedDataAccess.<version>\bin\x86 folder.
  106. Use the same steps for adding Oracle.ManagedDataAccessIOP.dll.
  107. To make your application platform independent even if it depends on Oracle.ManagedDataAccessDTC.dll and/or
  108. Oracle.ManagedDataAccessIOP.dll, create both x64 and x86 folders with the necessary assemblies added to them.
  109. Installation Changes
  110. ====================
  111. The following app/web.config entries are added by including the "Official Oracle ODP.NET, Managed Driver" NuGet package
  112. to your application:
  113. 1) Configuration Section Handler
  114. The following entry is added to the app/web.config to enable applications to add an <oracle.manageddataaccess.client>
  115. section for ODP.NET, Managed Driver-specific configuration:
  116. <configuration>
  117. <configSections>
  118. <section name="oracle.manageddataaccess.client" type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.121.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342" />
  119. </configSections>
  120. </configuration>
  121. Note: If your application is a web application and the above entry was added to a web.config and the same config
  122. section handler for "oracle.manageddataaccess.client" also exists in machine.config but the "Version" attribute values
  123. are different, an error message of "There is a duplicate 'oracle.manageddataaccess.client' section defined." may be
  124. observed at runtime. If so, the config section handler entry in the machine.config for
  125. "oracle.manageddataaccess.client" has to be removed from the machine.config for the web application to not encounter
  126. this error. But given that there may be other applications on the machine that depended on this entry in the
  127. machine.config, this config section handler entry may need to be moved to all of the application's .NET config file on
  128. that machine that depend on it.
  129. 2) DbProviderFactories
  130. The following entry is added for applications that use DbProviderFactories and DbProviderFactory classes. Also, any
  131. DbProviderFactories entry for "Oracle.ManagedDataAccess.Client" in the machine.config will be ignored with the following
  132. entry:
  133. <configuration>
  134. <system.data>
  135. <DbProviderFactories>
  136. <remove invariant="Oracle.ManagedDataAccess.Client" />
  137. <add name="ODP.NET, Managed Driver" invariant="Oracle.ManagedDataAccess.Client" description="Oracle Data Provider for .NET, Managed Driver" type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.121.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342" />
  138. </DbProviderFactories>
  139. </system.data>
  140. </configuration>
  141. 3) Dependent Assembly
  142. The following entry is created to ignore policy DLLs for Oracle.ManagedDataAccess.dll and always use the
  143. Oracle.ManagedDataAccess.dll version that is specified by the newVersion attribute in the <bindingRedirect> element.
  144. The newVersion attribute corresponds to the Oracle.ManagedDataAccess.dll version which came with the NuGet package
  145. associated with the application.
  146. <configuration>
  147. <runtime>
  148. <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
  149. <dependentAssembly>
  150. <publisherPolicy apply="no" />
  151. <assemblyIdentity name="Oracle.ManagedDataAccess" publicKeyToken="89b483f429c47342" culture="neutral" />
  152. <bindingRedirect oldVersion="4.121.0.0 - 4.65535.65535.65535" newVersion="4.121.2.0" />
  153. </dependentAssembly>
  154. </assemblyBinding>
  155. </runtime>
  156. </configuration>
  157. 4) Data Sources
  158. The following entry is added to provide a template on how a data source can be configured in the app/web.config.
  159. Simply rename "MyDataSource" to an alias of your liking and modify the PROTOCOL, HOST, PORT, SERVICE_NAME as required
  160. and un-comment the <dataSource> element. Once that is done, the alias can be used as the "data source" attribute in
  161. your connection string when connecting to an Oracle Database through ODP.NET, Managed Driver.
  162. <configuration>
  163. <oracle.manageddataaccess.client>
  164. <version number="*">
  165. <dataSources>
  166. <dataSource alias="SampleDataSource" descriptor="(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL))) " />
  167. </dataSources>
  168. </version>
  169. </oracle.manageddataaccess.client>
  170. </configuration>
  171. Documentation Corrections and Additions
  172. =======================================
  173. This section contains information that corrects or adds to existing ODP.NET documentation, which can be found here:
  174. http://www.oracle.com/technetwork/topics/dotnet/tech-info/index.html
  175. 1. ODP.NET Entity Framework Database First and Model First applications using Entity Framework 6 requires .NET
  176. Framework 4.5 or higher.
  177. 2. All Oracle database clients support interrupting database query execution, such as through an ODP.NET command
  178. timeout. The database server can be interrupted via either TCP/IP urgent data or normal TCP/IP data, called out of band
  179. (OOB) or in band data, respectively. Windows-based database servers only support in band breaks, whereas all other
  180. (predominantly UNIX-based) database servers can support OOB or in band breaks. ODP.NET, Managed Driver uses OOB breaks
  181. by default with database servers that support it. For certain network topologies, the routers or firewalls involved in
  182. the route to the database may have been configured to drop urgent data or in band the data. If the routers or firewalls
  183. can not be changed to handle urgent data appropriately, then the ODP.NET, Managed Driver can be configured to utilize
  184. in band breaks by setting the .NET configuration parameter disable_oob to "on". The default value for disable_oob is
  185. "off". disable_oob can be set in the <settings> of the .NET config file for <oracle.manageddataaccess.client>. As with
  186. all ODP.NET, Managed Driver settings, disable_oob can be set in either the .NET config or sqlnet.ora files, whereas it
  187. can only be set for ODP.NET, Unmanaged Driver in the sqlnet.ora file.
  188. ODP.NET, Managed Driver Tips, Limitations, and Known Issues
  189. ===========================================================
  190. This section contains information that is specific to ODP.NET, Managed Driver.
  191. 1. OracleConnection object's OpenWithNewPassword() method invocation will result in an ORA-1017 error with 11.2.0.3.0
  192. and earlier versions of the database. [Bug 12876992]
  193. 2. Stored functions/procedures in a PDB cannot be added to a .NET Entity Framework model. [Bug 17344899]