ChangeLog 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520
  1. 2005-10-14 Senganal T <[email protected]>
  2. * OdbcColumn.cs : Changed the mapping of OdbcType.Char to string
  3. instead of char. Fixes bug #67269
  4. 2005-10-14 Senganal T <[email protected]>
  5. * OdbcDataReader.cs: Added Text and NText datatypes to the list
  6. of datatypes checked by GetValue () method. Fixes bug #75032
  7. 2005-10-14 Sureshkumar T <[email protected]>
  8. * OdbcDataReader.cs (GetValue): Use SQL_CHAR for Numeric as
  9. temporary fix.
  10. * OdbcParameter.cs (CopyValue): Add support for Numeric & Decimal
  11. parameters.
  12. 2005-10-08 Sureshkumar T <[email protected]>
  13. * OdbcCommand.cs (BindParameters): Copy the parameter Value after
  14. binding.
  15. * OdbcParameter.cs: re-implemented the native buffer handling and
  16. odbc type handling.
  17. * NativeBuffer.cs: A native buffer class to hold pointer to native
  18. memory.
  19. * OdbcTypeMap.cs (OdbcTypeMap): structure to hold different odbc
  20. types and the default mapping.
  21. * OdbcTypeConverter.cs: Simplified mapping between different odbc
  22. types using switch-case.
  23. * libodbc.cs (SQLBindParameter): use only one entry point and use
  24. IntPtr instead of ref.
  25. 2005-08-20 Gert Driesen <[email protected]>
  26. * OdbcDataReader.cs: Marked GetPrimaryKeysBySQLStatistics unsafe.
  27. This fixes the build on Windows (using csc).
  28. 2005-08-09 Sureshkumar T <[email protected]>
  29. * OdbcDataReader.cs: GetSchemaTable (): set values for the column
  30. attributes using SQLColAttribute. If SQLPrimaryKeys does not
  31. yeild, try SQLStatistics. Optimized primary key logic.
  32. * libodbc.cs: Added api SQLStatistics and constants.
  33. * OdbcParameter.cs: setBuffer (): allocate a short int buffer for
  34. OdbcType.SmallInt. fixes bug #75600.
  35. 2005-08-08 Gert Driesen <[email protected]>
  36. * OdbcConnection.cs: Marked Init helper method private.
  37. * OdbcCommand.cs: Marked BindParameters helper method private.
  38. 2005-08-08 Sureshkumar T <[email protected]>
  39. * OdbcDataReader.cs: Implemented Dispose pattern. Cache
  40. schematable for same result set. don't free command's statements
  41. if the command is prepared.
  42. * OdbcConnection.cs: Open (): set disposed to false so that close
  43. will be called in Dispose.
  44. * OdbcCommand.cs:
  45. - Prepare (): Split SQLPrepare and SQLBind so that
  46. already prepared statements can be reused with new parameter
  47. values.
  48. - ExecSQL (): create new statement handle, if not prepared
  49. and there are no parameters. if there are parameters, prepare and
  50. use.
  51. - Implemented Dispose pattern
  52. - Streamlined the allocation and de-allocation of statement
  53. handles.
  54. 2005-08-05 Sureshkumar T <[email protected]>
  55. * OdbcDataReader.cs: RecordsAffected: get value from command.
  56. GetSchemaTable (): set IsExpression based on BaseTableName. set
  57. AllowDBNull to false if the column is PK.
  58. * OdbcCommand.cs: correct UpdatedRowSource is returned. whitespace
  59. changes to conform to standard.
  60. * OdbcCommandBuilder.cs: Implemented.
  61. * OdbcParameter.cs: Direction is set to Input by default.
  62. 2005-07-22 Sureshkumar T <[email protected]>
  63. * OdbcParameter.cs: updated attributes & attribute descriptions to
  64. match with masterinfos.
  65. * OdbcDataReader.cs: NextRow (): made private.
  66. 2005-07-21 Sureshkumar T <[email protected]>
  67. * OdbcDataReader.cs: GetValue (): added case for OdbcType.Bit. and
  68. Formatting corrections. Fixes bug #75574.
  69. 2005-07-07 Sureshkumar T <[email protected]>
  70. * OdbcTypeConverter.cs: ConvertToSqlType & ConvertToSqlCType: map
  71. VarChar to SQL_C_CHAR and SQL_VARCHAR respective instead of WCHAR
  72. and WVARCHAR as temporary fix.
  73. * OdbcParameter.cs: setBuffer: string types need not be quoted.
  74. 2005-06-28 Sureshkumar T <[email protected]>
  75. * OdbcDataReader.cs: GetPrimaryKeys (): use the length indicator
  76. for GetString, otherwise, it creates a string of length 255. Use
  77. ArrayList for keys as the columns are different from the selected
  78. columns. fixes bug #75263.
  79. 2005-06-09 Sureshkumar T <[email protected]>
  80. * OdbcDataReader.cs: GetValue (): return decimal in case of odbc
  81. type Numeric. Move the temp buffer logic inside.
  82. * OdbcTypeConverter.cs: map SQL_TYPE.NUMERIC to SQL_C_TYPE.CHAR by
  83. now, since PgSql driver seems not to accept NUMERIC c type. Other
  84. database anyway, provides NUMERIC datatype as DECIMAL.
  85. 2005-05-31 Sureshkumar T <[email protected]>
  86. * OdbcParameter.cs: setBuffer (): for numeric type, the buffer
  87. parameter should be a packed decimal struct. fixes bug #75041.
  88. 2005-04-05 Sureshkumar T <[email protected]>
  89. * OdbcParameter.cs: SqlBindParameter requires the last parameter
  90. to be a ref.
  91. * libodbc.cs: API change for above.
  92. 2005-04-04 Sureshkumar T <[email protected]>
  93. * OdbcDataReader.cs: Ignore BaseTableName & BaseColumnName
  94. properties while building Schema information as most drivers
  95. ignores these properties. e.g. PostgreSQL.
  96. 2005-03-24 Sureshkumar T <[email protected]>
  97. Appasamy <[email protected]>
  98. * OdbcColumn.cs: IsStringType: OdbcType.Char is also of type
  99. String.
  100. * OdbcDataReader.cs: GetSchemaTable: Get Additional info using
  101. SQLColAttribute. Don't pad with spaces in GetColAttributeStr.
  102. 2005-03-24 Sureshkumar T <[email protected]>
  103. * OdbcDataReader.cs:
  104. - GetValue: Decode only outsize length for SQL_C_TYPE.CHAR type in
  105. SQLGetData.
  106. - GetOrdinal: Perform case insensitive lookup if sensitive lookup
  107. fails.
  108. 2005-03-22 Sureshkumar T <[email protected]>
  109. Appsamy <[email protected]>
  110. * libodbc.cs (System.Data.Odbc): Added enum FieldIdentifier. Added
  111. library functions SQLPrimaryKeys, SQLBindCol and SQLColAttribute.
  112. * OdbcDataReader.cs: Implemented GetPrimaryKeys to get the primary
  113. keys associated with resultset using SQLPrimaryKeys.
  114. 2005-03-15 Sureshkumar T <[email protected]>
  115. * OdbcConnection.cs: re-throw error on exception in Open method.
  116. 2005-03-11 Sureshkumar T <[email protected]>
  117. * OdbcConnection.cs : notify state change through event. clean up
  118. handles in case any exception while opening a connection. NET_2_0
  119. uses base class's OnStateChange handler.
  120. 2005-03-10 Sureshkumar T <[email protected]>
  121. Migrated core classes to derive from ProviderBase instead of
  122. implementing IDb* interfaces. Most part of these files have been
  123. branched with #if NET_2_0/ONLY_1_1. Make sure any changes works
  124. with both the profiles.
  125. * OdbcFactory.cs: Concrete Factory for DbProviderFactory. Factory
  126. to generate Connection,Command,etc.
  127. * OdbcConnectionFactory.cs: Concrete factory for DbConnectionFactory.
  128. * OdbcTransaction.cs: migration and overrides.
  129. * OdbcCommandBuilder.cs: migration and overrides.
  130. * OdbcDataReader.cs: --do--. no command behavior member as it will
  131. be maintained in base provider class.
  132. * OdbcParameterCollection.cs: --do--. Now, local ArrayList is not
  133. maintained here, instead it is in base class. Most of the methods
  134. which operated on this list are not needed in NET_2_0.
  135. * OdbcConnection.cs: Migration. connectionString is maintained in
  136. DbConnectionBase class.
  137. * OdbcParameter.cs: Migration. Many of the local members like
  138. value,sourceColumn are maintained in DbParameterBase.
  139. * OdbcCommand.cs: Migration. commandText,timeout and
  140. commandTimeOut are maintained in DbCommandBase class.
  141. 2005-03-10 Sureshkumar T <[email protected]>
  142. * OdbcType.cs: Added enums for SQL_TYPE & SQL_C_TYPE.
  143. * libodbc.cs: Accept SQL_C_TYPE for driver
  144. parameters. SQLBindParameter takes two parameters SQL_TYPE and
  145. SQL_C_TYPE. This caused the whole lot of changes done in this
  146. revision.
  147. * OdbcParameter.cs: Set default values of OdbcType & DbType. Pass
  148. mapped SQL_TYPE and SQL_C_TYPE to SQLBindParameter. Increase
  149. buffer size by 2 for additional ' chars.
  150. * OdbcTypeConverter.cs: Added class to convert between OdbcType,
  151. SQL_TYPE, SQL_C_TYPE.
  152. * OdbcColumn.cs: Added private members for SQL_TYPE and
  153. SQL_C_TYPE. conversion from/to odbctype to/from SQL_TYPE is done
  154. through OdbcTypeConverter class.
  155. * OdbcDataReader.cs: use OdbcColumn's SQL_C_TYPE member. It keeps
  156. track of default mapping between odbctype, SQL_TYPE and
  157. SQL_C_TYPE. Move dataTableSchema.AcceptChanges inside if condition
  158. to avoid null reference exception.
  159. 2005-02-04 Sureshkumar T <[email protected]>
  160. Appasamy <[email protected]>
  161. * OdbcConnection.cs: Implemented properties database, datasource,
  162. serverversion and driver.
  163. * libodbc.cs: Added type OdbcInfo and native call SQLGetInfo.
  164. 2005-01-20 Sureshkumar T <[email protected]>
  165. * OdbcDataReader.cs: case for type OdbcType.Double added in
  166. GetValue. fixes bug #71173.
  167. Thanks to patch given by "Appasamy T" <[email protected]>
  168. 2005-01-19 Sureshkumar T <[email protected]>
  169. * OdbcType.cs: Change enum values for compatiability with MS.NET.
  170. * libodbc.cs: Change enum values for compatiability with
  171. MS.NET. Change calls into driver with native type.
  172. * OdbcDataReader.cs: Change enum values for compatiability with
  173. MS.NET. Change calls from/into driver with native type.
  174. 2005-01-18 Sureshkumar T <[email protected]>
  175. * OdbcDataReader.cs: GetOrdinal need not check for
  176. currentRow. Return -1 if column name is not found.
  177. fixes bug #71261. Thanks to patch given by "Appasamy T"
  178. <[email protected]>.
  179. 2005-01-13 Sureshkumar T <[email protected]>
  180. * OdbcDataReader.cs: Implement NextResultSet for multiple result
  181. set queries.
  182. * OdbcDataReader.cs: build column schema once creating reader and
  183. then for each Next result set. Thanks to
  184. [email protected] (Sebastien Robitaille) for
  185. pointing out this optimization (bugzilla #70530).
  186. * libodbc.cs: Added library calls SQLFreeStmt and SQLMoreResults
  187. for mutiple resultsets.
  188. 2005-01-10 Sureshkumar T <[email protected]>
  189. * OdbcDataReader.cs: Connection has to be closed only after
  190. Statement handle is freed. fixes bug #70048.
  191. 2005-01-07 Sureshkumar T <[email protected]>
  192. * OdbcDataReader.cs: Pass OdbcCType.SignedBigInt for accessing big
  193. int columns.
  194. * OdbcType.cs: Added a new enum for Odbc C DataTypes. This should
  195. essentially be passed to drivers, since the public OdbcType types
  196. differs from types expected in drivers in some cases.
  197. * libodbc.cs : Added a ODBC method which takes OdbcCType
  198. enumeration for SQLGetData for BigInt fields.
  199. fixes bug #65342.
  200. 2004-12-28 Duncan Mak <[email protected]>
  201. * libodbc.cs: Change all the DllImport attributes to point to
  202. "odbc32.dll" instead of "odbc32", because /etc/mono/config lists
  203. "odbc32.dll" (all other entries in the file have the .dll suffix
  204. as well, for consistency's sake, let's rename it here.)
  205. This fixes #70727.
  206. 2004-12-03 Sureshkumar T <[email protected]>
  207. * OdbcParameter.cs: Fixed a null reference exception when a
  208. parameter is created and its value is not set. #68750.
  209. 2004-11-26 Sureshkumar T <[email protected]>
  210. * OdbcParameter.cs: Fixed Parameter Size property as well as
  211. insufficient buffer errors. bug #68749.
  212. 2004-09-14 Sebastien Pouliot <[email protected]>
  213. * OdbcPermission.cs: Added internal constructor accepting an Odbc
  214. PermissionAttribute parameter (using base class protected ctor).
  215. * OdbcPermissionAttribute.cs: Copy now use the new OdbcPermission
  216. constructor.
  217. 2004-09-13 Sebastien Pouliot <[email protected]>
  218. * OdbcPermission.cs: Mostly completed (needs tests).
  219. * OdbcPermissionAttribute.cs: Completed.
  220. 2004-08-31 Umadevi S ([email protected])
  221. * OdbcDataReader.cs - Fixed Decimal parsing
  222. 2004-08-30 Umadevi S ([email protected])
  223. * OdbcType.cs - removed inheritance from short.
  224. 2004-08-27 Sureshkumar T ([email protected])
  225. * OdbcDataReader.cs - fixed bug #63539 - TINYINT ODBC datatype is converted into System.Byte
  226. 2004-08-26 Sureshkumar T ([email protected])
  227. * OdbcDataReader.cs - Date & DateTime GetValue fixed.
  228. GetBytes ordinal parameter passing fixed for BINARY in GetValue.
  229. 2004-08-20 Sureshkumar T ([email protected])
  230. * OdbcConnection.cs - correct handles are passed to OdbcError exception to trap the correct error
  231. 2004-08-04 Umadevi S ([email protected])
  232. * OdbcDataReader.cs - Fixed bug 61832 - Column names were not filled, due to which name based lookup of columns failed.
  233. 2004-08-04 Umadevi S ([email protected])
  234. * OdbcDataReader.cs - Fixed bug 61405 - Handling smallint column type.
  235. 2004-07-30 Sureshkumar T ([email protected])
  236. * OdbcCommand.cs: ExecuteNonQuery Closed statement handle to fix memory leak
  237. * OdbcDataReader.cs: Closed statement handle to fix memory leak
  238. Removed SQLState login in GetBytes coz OdbcError provides the same.
  239. 2004-07-29 Umadevi S ([email protected])
  240. * OdbcCommand.cs - Fixed bug 62046. ExecuteNonQuery implemented correctly
  241. 2004-07-28 Umadevi S ([email protected])
  242. * OdbcParameter.cs - fixed bug 61968. String values passed with quotes
  243. 2004-07-07 Umadevi S ([email protected])
  244. * OdbcConnection.cs - Allowed Close to be called multiple times
  245. - Implementation of Dispose method
  246. 2004-07-07 Umadevi S ([email protected])
  247. * OdbcCommand.cs : fixed set method for Transaction
  248. 2004-07-01 Sureshkumar T ([email protected])
  249. * OdbcCommand.cs : fixed reader problem with ExecuteScalar
  250. 2004-06-23 Sureshkumar T ([email protected])
  251. * OdbcConnection.cs: Fix: Moved env allocation to Open method.
  252. Disconnection & freeing handles are done in Close
  253. method to avoid simultaneous connections.
  254. * libodbc.cs : Added constants for odbc version.
  255. 2004-06-16 Gert Driesen <[email protected]>
  256. * OdbcError.cs: fixed serialization compatibility with MS.NET
  257. * OdbcErrorCollection.cs: fixed serialization compatibility with
  258. MS.NET
  259. * OdbcException.cs: fixed serialization compatibility with MS.NET
  260. 2004-06-16 Sureshkumar T ([email protected])
  261. * OdbcDataReader.cs: Added GetValue support for Sql Binary type to return byte array.
  262. Implemented GetBytes method.
  263. * libodbc.cs : Added enums, constants & imports for above fix.
  264. 2004-06-13 Gert Driesen <[email protected]>
  265. * OdbcDataReader.cs: changed GetData method to return IDataReader
  266. to match MS.NET
  267. 2004-06-09 Sureshkumar T ([email protected])
  268. * OdbcDataReader.cs: Removed checking of currentRow in GetName
  269. method
  270. 2004-06-04 Gert Driesen <[email protected]>
  271. * OdbcPermission.cs: moved Obsolete attribute to correct
  272. ctor
  273. 2004-06-02 Sureshkumar T ([email protected])
  274. * OdbcDataReader.cs: Implemented GetByte method. Fixed bug #58820
  275. 2004-06-02 Gert Driesen <[email protected]>
  276. * OdbcParameter.cs: added missing attributes
  277. * OdbcPermission.cs: added missing attributes
  278. * OdbcConnection.cs: fixes attribute, added missing attributes
  279. * OdbcInfoMessageEventArgs.cs: removed extra properties, fixed
  280. API compatibility with MS.NET
  281. * OdbcCommandBuilder.cs: use correct attributes
  282. 2004-05-20 Gert Driesen ([email protected])
  283. * OdbcPermissionAttribute.cs: change AllowMultiple and
  284. Inherited to match .NET
  285. 2004-05-17 Umadevi S ([email protected])
  286. * OdbcPermissionAttribute, OdbcPermission.cs - fixed missing methods
  287. 2004-05-17 Gert Driesen ([email protected])
  288. * OdbcCategoryAttribute.cs: fixed namespace
  289. * OdbcDataAdapter.cs: removed extra attributes
  290. * OdbcDescriptionAttribute.cs: fixed namespace
  291. 2004-05-14 Umadevi S ([email protected])
  292. * OdbcParameterConverter.cs -Added
  293. * OdbcParameter.cs - Added some attributes
  294. 2004-05-14 Umadevi S ([email protected])
  295. * OdbcDataAdapter.cs - Added Attributes
  296. 2004-05-14 Umadevi S ([email protected])
  297. * OdbcConnection.cs - Added Attributes
  298. 2004-05-14 Umadevi S ([email protected])
  299. * OdbcCommand.cs - Added Attributes
  300. 2004-05-14 Umadevi S ([email protected])
  301. * OdbcDataReader.cs - Added Attributes
  302. 2004-05-14 Umadevi S ([email protected])
  303. * Added Classes OdbcCategoryAttribute.cs, OdbcDescriptionAttribute.cs
  304. 2004-05-14 Umadevi S ([email protected])
  305. * Added Class OdbcCommandBuilder.cs
  306. 2004-05-14 Umadevi S ([email protected])
  307. * Added classes OdbcInfoMessageEventArgs.cs - with stubs
  308. * Added classes OdbcInfoMessageEventInfo.cs
  309. 2004-05-14 Umadevi S ([email protected])
  310. * Added classes OdbcPermission.cs, OdbcPermissionAttribute.cs - with stubs
  311. 2004-05-09 Gert Driesen ([email protected])
  312. * OdbcException.cs : removed ErrorCode property, fixing signature
  313. * OdbcErrorCollection.cs : added internal ctor, reduced
  314. accessibility of Add method to internal
  315. * OdbcCommand.cs: marked hstmt field private, remove setters for
  316. Parameters property
  317. * OdbcDataReader.cs: Added GetDate method, renamed GetTimeSpan to
  318. GetTime to match MS.NET, added HasRows stub
  319. 2004-05-09 Gert Driesen ([email protected])
  320. * OdbcError.cs:
  321. * OdbcErrorCollection.cs:
  322. * OdbcException.cs: fixed linefeeds to DOS to match other
  323. sources in System.Data.Odbc
  324. 2004-05-09 Gert Driesen ([email protected])
  325. * OdbcCommand.cs: No longer use OdbcConnection.Datareader, in order
  326. to fix signature of OdbcConnection
  327. * OdbcDataReader.cs: No longer use ODbcConnection.Datareader, in
  328. order to fix signature of OdbcConnection
  329. * OdbcConnection.cs: Signature fixes: removed DataReader property,
  330. added setter for ConnectionTimeout, made transaction internal
  331. * OdbcParameter.cs: reduced accessibility of Bind method to
  332. internal, added setter for IsNullable
  333. * OdbcParameterCollection.cs: made default ctor and Bind method
  334. internal
  335. 2004-05-09 Gert Driesen ([email protected])
  336. * OdbcCommand.cs: fixed linefeeds to DOS to match other sources
  337. in System.Data.Odbc
  338. 2004-05-09 Gert Driesen ([email protected])
  339. * OdbcTransaction.cs: fixed signature to match MS.NET
  340. 2004-05-09 Gert Driesen ([email protected])
  341. * OdbcType.cs: fixed typo UniqueIndetifier
  342. * OdbcColumn.cs : fixed typo UniqueIndetifier
  343. 2004-05-09 Gert Driesen ([email protected])
  344. * OdbcType.cs: fixed linefeeds to DOS to match other sources
  345. in System.Data.Odbc
  346. 2003-12-01 Gonzalo Paniagua Javier <[email protected]>
  347. * OdbcTransaction.cs: applied patch from Jeff Seifert that makes
  348. this class implement IDbTransaction interface.
  349. 2002-11-01 Daniel Morgan <[email protected]>
  350. * OdbcDataReader.cs: - uncommented code, but I put a FIXME:
  351. according to Brian, this does not work on MS .NET however, we need it
  352. for Mono for now. schemaRow.AcceptChanges(),
  353. - implement IEnumerable.GetEnumerator()
  354. * libodbc.cs: changed the DllImport from "odbc32.dll" to "odbc32"
  355. 2002-10-21 Gonzalo Paniagua Javier <[email protected]>
  356. * ChangeLog: added.
  357. * OdbcError.cs:
  358. * OdbcException.cs: added dummy implementation for these missing
  359. classes.