ChangeLog 19 KB

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