ChangeLog 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925
  1. 2008-04-21 Gert Driesen <[email protected]>
  2. * OdbcParameterCollection.cs: Changed argument names to match MS.
  3. Code formatting.
  4. 2008-03-24 Gert Driesen <[email protected]>
  5. * OdbcTransaction.cs: Use internal CreateOdbcException method on
  6. OdbcConnection to create OdbcException.
  7. * OdbcException.cs: Added support for multiple OdbcError instances
  8. and fixed Message property on 2.0 profile.
  9. * OdbcCommand.cs: Use internal CreateOdbcException method on
  10. OdbcConnection to create OdbcException. Code formatting.
  11. * OdbcError.cs: Moved code to obtain ODBC error info to newly
  12. introduced CreateOdbcException on OdbcConnection. Code formatting.
  13. * OdbcDataReader.cs: Use internal CreateOdbcException method on
  14. OdbcTransaction to create OdbcException.
  15. * OdbcParameterCollection.cs: Removed obsolete Bind method.
  16. * OdbcConnection.cs: Added SafeDriver property that returns
  17. name of driver if available and a zero-length string otherwise.
  18. Use CreateOdbcException method to create OdbcException from ODBC
  19. error info. Added CreateOdbcException method to construct
  20. OdbcException from all available ODBC error info.
  21. * OdbcParameter.cs: Use internal CreateOdbcException method on
  22. OdbcConnection to create OdbcException.
  23. 2008-03-23 Gert Driesen <[email protected]>
  24. * OdbcErrorCollection.cs: Corcompare fixes and code formatting.
  25. * OdbcCommandBuilder.cs: Corcompare fixes and code formatting.
  26. * OdbcPermission.cs: Corcompare fixes and code formatting.
  27. * OdbcDataReader.cs: Corcompare fixes and code formatting.
  28. * OdbcParameterCollection.cs: Corcompare fixes and code formatting.
  29. * OdbcConnection.cs: Corcompare fixes and code formatting. Use
  30. unicode encoding in ChangeDatabase and GetInfo.
  31. * OdbcDataAdapter.cs: Corcompare fixes and code formatting.
  32. * OdbcParameter.cs: Corcompare fixes and code formatting.
  33. 2008-03-21 Gert Driesen <[email protected]>
  34. * libodbc.cs: Always use unicode version of ODBC functions. Fixes part
  35. of bug #372823.
  36. * OdbcTypeMap.cs: Fixed mapping for NChar, NText and NVarChar.
  37. * OdbcDataReader.cs (GetColumn): Use Unicode encoding to decode
  38. column name buffer.
  39. (GetDataTypeName): Use SQLColAttribute to determine type name of
  40. column.
  41. (GetValue): Fixed retrieving value of nchar column. When retrieving
  42. variable length unicode value, use Unicode encoding to decode buffer
  43. and remove trailing null characters. Fixes bug #364430.
  44. 2008-03-03 Veerapuram Varadhan <[email protected]>
  45. ** Fixes Bug#324025
  46. * OdbcDataReader (GetString): Use Convert.ToString() to return
  47. appropriate typed values.
  48. (GetValue): Fixes a regression.
  49. 2008-03-03 Veerapuram Varadhan <[email protected]>
  50. * OdbcCommandBuilder.cs: Clean up.
  51. 2008-03-03 Veerapuram Varadhan <[email protected]>
  52. ** Fixes Bug#340451 - patch provided by Ernesto Carrea
  53. <[email protected]>
  54. * OdbcConnection.cs (GetInfo): Trim the value to actual length
  55. returned by libodbc.
  56. 2008-03-03 Veerapuram Varadhan <[email protected]>
  57. ** Fixes from BNC#332809 - patch provided by Ernesto Carrea
  58. <[email protected]>
  59. * OdbcParameter.cs (Bind): Do not allocate buffer if value is
  60. DBNull.
  61. * OdbcTypeConverter.cs (InferFromValue): Incase of DBNull, do not
  62. throw exception, instead return NVarChar to match MS.NET
  63. implementation.
  64. 2008-03-03 Ankit Jain <[email protected]>
  65. * OdbcMetaDataCollectionNames.cs: Set the field values.
  66. 2008-02-26 Veerapuram Varadhan <[email protected]>
  67. ** Fixes BNC#364432.
  68. * OdbcParameter.cs: (Bind): Set StrLen parameter of
  69. SQLBindParameter to reflect NullData in case of DBNull.
  70. (CopyValue): If Value is DBNull.Value, just don't try any
  71. heroics.
  72. 2008-02-25 Veerapuram Varadhan <[email protected]>
  73. ** Fixes BNC#364426.
  74. * OdbcDataReader.cs: (GetValue): Map OdbcType.Time to
  75. System.TimeSpan.
  76. * OdbcTypeConverter.cs: (GetTypeMap): Map OdbcType.Time and
  77. SqlType.TIME to corresponding types.
  78. * OdbcColumn.cs: -- ditto --
  79. 2008-02-20 Veerapuram Varadhan <[email protected]>
  80. * OdbcDataReader.cs: (GetValue): Handle cases when certain
  81. ODBC drivers return unexpected results. Fixes #326740. Patch
  82. provided by Mark Junker <[email protected]>.
  83. 2008-01-16 Veerapuram Varadhan <[email protected]>
  84. * OdbcCommandBuilder.cs: Implemented 2.0 APIs and code
  85. restructuring.
  86. 2007-10-28 Gert Driesen <[email protected]>
  87. * OdbcDataReader.cs: Code formatting, spaces to tabs.
  88. 2007-10-20 Gert Driesen <[email protected]>
  89. * OdbcCommand.cs: Added constant for default CommandTimeout, instead
  90. of using a magic number. Avoid unnecessary initialization. Fixed
  91. default value for DesignTimeVisible. Return zero-length string if
  92. CommandText is null. Spaces to tabs and code formatting.
  93. * OdbcError.cs: Fixed typo in exception message.
  94. * OdbcConnection.cs: Return zero-length string if ConnectionString is
  95. null. In getters for Database, DataSource and Driver return a
  96. zero-length string if connection is closed. In BeginTransaction and
  97. GetSchema throw InvalidOperationException if connection is closed.
  98. Added override for GetSchema (string, string []). Use string.Empty
  99. instead of "".
  100. * OdbcDataAdapter.cs: Avoid unnecessary initializations. Use direct
  101. assignment in IDbDataAdapter implementation. In default ctor, set
  102. SelectCommand to null.
  103. 2007-10-19 Gert Driesen <[email protected]>
  104. * OdbcTransaction.cs: Clear connection in Commit and Rollback.
  105. In IsolationLevel, throw IOE if transaction is no longer open.
  106. 2007-10-19 Gert Driesen <[email protected]>
  107. * OdbcTransaction.cs: Keep state of the transaction, and update it
  108. when performing commit or rollback. In Dispose (bool), only perform
  109. a rollback if transaction was not committed or rollback before.
  110. In Commit and Rollback, throw an InvalidOperationException if
  111. transaction is no longer open.
  112. 2007-10-19 Gert Driesen <[email protected]>
  113. * OdbcTransaction.cs: Use OdbcIsolationLevel enum value instead of
  114. magic numbers. For Snapshot isolation level, the attribute
  115. SQL_COPT_SS_TXN_ISOLATION must be used instead. When isolation level
  116. is Unspecified, then do not modify the isolation level at all and
  117. lazy initlization the IsolationLevel property. Modified exceptions
  118. for invalid / not supported isolation levels to match MS.
  119. * libodbc.cs: Added attribute for changing SQL Server specific
  120. connection option. Added enum for ODBC isolation level options.
  121. Added SQLGetConnectAttr method.
  122. 2007-10-19 Gert Driesen <[email protected]>
  123. * libodbc.cs: Spaces to tabs. Code formatting.
  124. * OdbcConnection.cs: Spaces to tabs. Code formatting.
  125. * OdbcTransaction.cs: Code formatting.
  126. 2007-10-19 Nagappan <[email protected]>
  127. * OdbcCommandBuilder.cs, OdbcParameterCollection.cs: Code alignment.
  128. * OdbcDataReader.cs: Fixes numeric columns, bug # 332404.
  129. 2007-10-19 Nagappan <[email protected]>
  130. * OdbcCommand.cs: (Clone): Implemented new method. Code alignment.
  131. 2007-10-12 Nagappan <[email protected]>
  132. * OdbcDataReader.cs: Bug 332400 - ODBC and LONGBLOB columns. Thanks to
  133. Ernesto Carrea <[email protected]> for the patch and the test case.
  134. 2007-10-08 Marek Safar <[email protected]>
  135. * OdbcParameterCollection.cs (SetParameter): Fixed missing cast.
  136. 2007-09-27 Nagappan A <[email protected]>
  137. * OdbcTransaction.cs: AutoCommit and BeginTransaction fix. Thanks to
  138. Mads Bondo Dydensborg <[email protected]> and Amc <[email protected]> for
  139. providing this patch.
  140. 2007-09-25 Nagappan A <[email protected]>
  141. * OdbcParameter.cs (ResetOdbcType, ResetDbType): Implemented
  142. missing methods. 2.0 attribute fixes.
  143. * OdbcInfoMessageEventArgs.cs (Message, Errors, ToString):
  144. Implemented missing properties and methods. 2.0 attribute fixes.
  145. * OdbcConnection.cs (InfoMessage): Added public event and relevant
  146. private APIs. 2.0 attribute fixes.
  147. * OdbcConnectionStringBuilder.cs: 2.0 attribute fixes.
  148. * OdbcParameterCollection.cs (GetParameter, SetParameter):
  149. Implemented missing 2.0 APIs and 2.0 attribute fixes.
  150. * OdbcDataReader.cs (finalize): 2.0 compatibility fixes.
  151. * OdbcPermission.cs (Add): 2.0 compatibility fixes.
  152. * OdbcCommandBuilder.cs: 2.0 attribute fixes.
  153. * OdbcRowUpdatingEventArgs.cs (BaseCommand): Added 2.0 property.
  154. * OdbcCommand.cs: 2.0 attribute fixes.
  155. * OdbcException.cs: 2.0 attribute fixes.
  156. 2007-09-11 AMC <[email protected]>
  157. * OdbcDataReader.cs (GetPrimaryKeys): ODBC data reader can now
  158. properly handle "no-primary-keys" situation. Fixes bug # 82560.
  159. 2007-09-11 Nagappan A <[email protected]>
  160. * OdbcConnectionStringBuilder.cs: Fixed Dsn DisplayName attribute.
  161. 2007-08-13 Nagappan A <[email protected]>
  162. * OdbcMetaDataColumnNames.cs: Added new class.
  163. * OdbcMetaDataCollectionNames.cs: Added new class.
  164. * OdbcParameter.cs: 2.0 compatibility changes.
  165. * OdbcFactory.cs (CreateConnectionStringBuilder)
  166. (CreatePermission): Implemented new methods.
  167. * OdbcInfoMessageEventHandler.cs: 2.0 compatibility changes.
  168. * OdbcConnection.cs: 2.0 compatibility changes.
  169. (GetSchema): Added new overloaded methods.
  170. * OdbcConnectionStringBuilder.cs (Driver, Dsn): Added attributes
  171. as per 2.0 requirement.
  172. * OdbcDataReader.cs: 2.0 compatibility changes.
  173. * OdbcCommandBuilder.cs: 2.0 compatibility changes.
  174. * OdbcCommand.cs: 2.0 compatibility changes.
  175. * OdbcErrorCollection.cs (CopyTo): Implemented new overloaded
  176. method.
  177. * OdbcException.cs: In 2.0 DbException should be inherited instead
  178. of SystemException.
  179. 2007-07-31 Nagappan A <[email protected]>
  180. * OdbcCommand.cs (ExecSQL): Thanks to [email protected] (amc) for
  181. providing the patch, Fixes bug # 82135. ODBC SQLExecDirect
  182. error. Delete where no-data-found fails.
  183. * OdbcCommandBuilder.cs: Removed bogus TODO.
  184. Fixed 2.0 missing attributes
  185. * libodbc.cs: Added new libodbc global constant SQL_NTS.
  186. * OdbcCommand.cs (ExecSQL): Thanks to [email protected] (amc) for
  187. providing the patch, Fixes bug # 82191. ODBC command UTF8
  188. error. SQL failed with UTF8 symbols in query.
  189. Removed bogus TODO.
  190. Fixed 2.0 missing attributes
  191. 2007-07-22 Nagappan A <[email protected]>
  192. * OdbcDataAdapter.cs: Fixed compilation warning.
  193. * OdbcTransaction.cs: Fixed compilation warning.
  194. 2007-06-30 Gert Driesen <[email protected]>
  195. * OdbcDataAdapter.cs: Only override Dispose on 1.0 profile. Added
  196. stub for ICloneable.Clone.
  197. * OdbcTransaction.cs: Dispose should be explicit interface impl., not
  198. public. Connection is also public on 2.0 profile.
  199. 2007-06-21 Nagappan A <[email protected]>
  200. * OdbcConnectionStringBuilder.cs: Added new file with the basic
  201. work of Nidhi Rawal ([email protected]).
  202. * OdbcDataReader.cs (GetValue): Patch for varchar longer than 255
  203. characters, by Mads Bondo Dydensborg <[email protected]>.
  204. * OdbcConnection.cs: Fixed compiler warning.
  205. 2007-06-06 Amit Biswas <[email protected]>
  206. * OdbcParameter.cs (OdbcParameter ()): Changed default values in the constructor
  207. * OdbcParameterCollection.cs (AddRange (Array values)): Implemented missing method
  208. (Add): Corrected bug related to default parameter names
  209. (Insert): Added check for valid index values
  210. (Contains): Corrected bug for case sensitivity
  211. (IndexOf): Corrected bug for case sensitivity
  212. (IndexOf): Corrected bug in comparing parameter names
  213. (Remove): Added check for non existing parameters
  214. (AddRange (OdbcParameter): Implemented missing method
  215. (AddRange (Array values): Implemented missing method
  216. (Insert (int index, OdbcParameter value)): Implemented missing method
  217. (Insert (int index, object value)): Implemented missing method
  218. (AddWithValue (string parameterName, Object value)): Implemented missing method
  219. (Remove (OdbcParameter value)): Implemented missing method
  220. (Contains (OdbcParameter value)): Implemented missing method
  221. (CopyTo (OdbcParameter [] array, int index)): Implemented missing method
  222. 2007-05-30 Nagappan A <[email protected]>
  223. * OdbcDataReader.cs (GetValue): Adds nano seconds as tickcs from
  224. the received buffer.
  225. 2007-05-25 Nagappan A <[email protected]>
  226. * OdbcDataReader.cs (GetValue): Sybase returns the fraction values
  227. in nano seconds, but DateTime expects the value in milliseconds,
  228. so the conversion.
  229. 2007-05-04 Nagappan A <[email protected]>
  230. * libodbc.cs: Wrong ODBC API definitions (using ints instead of
  231. shorts) - Fixes bug 81306. Thanks to [email protected] and
  232. [email protected].
  233. * OdbcDataReader.cs: Wrong ODBC API definitions (using ints
  234. instead of shorts) - Fixes bug 81306. Thanks to
  235. [email protected] and [email protected].
  236. 2007-02-09 Nagappan A <[email protected]>
  237. * OdbcDataReader.cs (GetDecimal): Implemented new API.
  238. 2007-01-08 Nagappan A <[email protected]>
  239. * OdbcFactory.cs: Fixed compilation warning.
  240. * OdbcCategoryAttribute.cs (Category): Implemented missing
  241. property.
  242. * OdbcParameterCollection.cs: Fixed compilation warning.
  243. * OdbcCommandBuilder.cs (GetInsertCommand, GetUpdateCommand)
  244. (GetDeleteCommand): Implemented overloaded method.
  245. * OdbcTransaction.cs: Modified partial content of DOS format file
  246. to UNIX format.
  247. 2006-07-13 Senganal T <[email protected]>
  248. * OdbcTransaction.cs OdbcCommand.cs OdbcConnectionFactory.cs
  249. OdbcPermission.cs OdbcDataReader.cs OdbcParameterCollection.cs
  250. OdbcConnection.cs OdbcFactory.cs OdbcParameter.cs :
  251. 2.0 Api fixes
  252. 2006-05-31 Gert Driesen <[email protected]>
  253. * OdbcErrorCollection.cs: Removed explicit interface implementation
  254. of IEnumerable.GetEnumerator ().
  255. * OdbcCommand.cs: Removed destructor as the destructor in
  256. System.ComponentModel.Component already calls the Dispose method.
  257. Removed explicit interface implemenation of members that are
  258. implement by public members.
  259. * OdbcDataReader.cs: Removed explicit interface implemenation of
  260. IDataRecord.GetData.
  261. 2006-05-24 Senganal T <[email protected]>
  262. * OdbcColumn.cs :
  263. - Added IsVariableSizeType : Handle types with variable datasize
  264. * OdbcTypeConverter.cs : map LongVarBinary to Image
  265. * OdbcDataReader.cs :
  266. - GetValue () : Handle Text,Image datatypes differently. Only allocate
  267. storage for the data contained and not for MaxLength. Fixes #78234
  268. 2006-05-09 Senganal T <[email protected]>
  269. * OdbcConnection.cs : Implemented ChangeDatabase Method
  270. * libodbc.cs : Added value for CurrentCatalog in OdbcConnectionAttribute
  271. 2006-02-17 Chris Toshok <[email protected]>
  272. * OdbcDataReader.cs: remove VisibleFieldCount property.
  273. 2005-11-21 Senganal T <[email protected]>
  274. * OdbcTransaction.cs
  275. * OdbcCommandBuilder.cs
  276. * OdbcParameterCollection.cs
  277. * OdbcDataReader.cs
  278. * OdbcFactory.cs
  279. * OdbcDataAdapter.cs
  280. * OdbcParameter.cs
  281. Added stubs and other changes for ADO.NET 2.0 compatibility
  282. 2005-10-14 Senganal T <[email protected]>
  283. * OdbcColumn.cs : Changed the mapping of OdbcType.Char to string
  284. instead of char. Fixes bug #67269
  285. 2005-10-14 Senganal T <[email protected]>
  286. * OdbcDataReader.cs: Added Text and NText datatypes to the list
  287. of datatypes checked by GetValue () method. Fixes bug #75032
  288. 2005-10-14 Sureshkumar T <[email protected]>
  289. * OdbcDataReader.cs (GetValue): Use SQL_CHAR for Numeric as
  290. temporary fix.
  291. * OdbcParameter.cs (CopyValue): Add support for Numeric & Decimal
  292. parameters.
  293. 2005-10-08 Sureshkumar T <[email protected]>
  294. * OdbcCommand.cs (BindParameters): Copy the parameter Value after
  295. binding.
  296. * OdbcParameter.cs: re-implemented the native buffer handling and
  297. odbc type handling.
  298. * NativeBuffer.cs: A native buffer class to hold pointer to native
  299. memory.
  300. * OdbcTypeMap.cs (OdbcTypeMap): structure to hold different odbc
  301. types and the default mapping.
  302. * OdbcTypeConverter.cs: Simplified mapping between different odbc
  303. types using switch-case.
  304. * libodbc.cs (SQLBindParameter): use only one entry point and use
  305. IntPtr instead of ref.
  306. 2005-08-20 Gert Driesen <[email protected]>
  307. * OdbcDataReader.cs: Marked GetPrimaryKeysBySQLStatistics unsafe.
  308. This fixes the build on Windows (using csc).
  309. 2005-08-09 Sureshkumar T <[email protected]>
  310. * OdbcDataReader.cs: GetSchemaTable (): set values for the column
  311. attributes using SQLColAttribute. If SQLPrimaryKeys does not
  312. yeild, try SQLStatistics. Optimized primary key logic.
  313. * libodbc.cs: Added api SQLStatistics and constants.
  314. * OdbcParameter.cs: setBuffer (): allocate a short int buffer for
  315. OdbcType.SmallInt. fixes bug #75600.
  316. 2005-08-08 Gert Driesen <[email protected]>
  317. * OdbcConnection.cs: Marked Init helper method private.
  318. * OdbcCommand.cs: Marked BindParameters helper method private.
  319. 2005-08-08 Sureshkumar T <[email protected]>
  320. * OdbcDataReader.cs: Implemented Dispose pattern. Cache
  321. schematable for same result set. don't free command's statements
  322. if the command is prepared.
  323. * OdbcConnection.cs: Open (): set disposed to false so that close
  324. will be called in Dispose.
  325. * OdbcCommand.cs:
  326. - Prepare (): Split SQLPrepare and SQLBind so that
  327. already prepared statements can be reused with new parameter
  328. values.
  329. - ExecSQL (): create new statement handle, if not prepared
  330. and there are no parameters. if there are parameters, prepare and
  331. use.
  332. - Implemented Dispose pattern
  333. - Streamlined the allocation and de-allocation of statement
  334. handles.
  335. 2005-08-05 Sureshkumar T <[email protected]>
  336. * OdbcDataReader.cs: RecordsAffected: get value from command.
  337. GetSchemaTable (): set IsExpression based on BaseTableName. set
  338. AllowDBNull to false if the column is PK.
  339. * OdbcCommand.cs: correct UpdatedRowSource is returned. whitespace
  340. changes to conform to standard.
  341. * OdbcCommandBuilder.cs: Implemented.
  342. * OdbcParameter.cs: Direction is set to Input by default.
  343. 2005-07-22 Sureshkumar T <[email protected]>
  344. * OdbcParameter.cs: updated attributes & attribute descriptions to
  345. match with masterinfos.
  346. * OdbcDataReader.cs: NextRow (): made private.
  347. 2005-07-21 Sureshkumar T <[email protected]>
  348. * OdbcDataReader.cs: GetValue (): added case for OdbcType.Bit. and
  349. Formatting corrections. Fixes bug #75574.
  350. 2005-07-07 Sureshkumar T <[email protected]>
  351. * OdbcTypeConverter.cs: ConvertToSqlType & ConvertToSqlCType: map
  352. VarChar to SQL_C_CHAR and SQL_VARCHAR respective instead of WCHAR
  353. and WVARCHAR as temporary fix.
  354. * OdbcParameter.cs: setBuffer: string types need not be quoted.
  355. 2005-06-28 Sureshkumar T <[email protected]>
  356. * OdbcDataReader.cs: GetPrimaryKeys (): use the length indicator
  357. for GetString, otherwise, it creates a string of length 255. Use
  358. ArrayList for keys as the columns are different from the selected
  359. columns. fixes bug #75263.
  360. 2005-06-09 Sureshkumar T <[email protected]>
  361. * OdbcDataReader.cs: GetValue (): return decimal in case of odbc
  362. type Numeric. Move the temp buffer logic inside.
  363. * OdbcTypeConverter.cs: map SQL_TYPE.NUMERIC to SQL_C_TYPE.CHAR by
  364. now, since PgSql driver seems not to accept NUMERIC c type. Other
  365. database anyway, provides NUMERIC datatype as DECIMAL.
  366. 2005-05-31 Sureshkumar T <[email protected]>
  367. * OdbcParameter.cs: setBuffer (): for numeric type, the buffer
  368. parameter should be a packed decimal struct. fixes bug #75041.
  369. 2005-04-05 Sureshkumar T <[email protected]>
  370. * OdbcParameter.cs: SqlBindParameter requires the last parameter
  371. to be a ref.
  372. * libodbc.cs: API change for above.
  373. 2005-04-04 Sureshkumar T <[email protected]>
  374. * OdbcDataReader.cs: Ignore BaseTableName & BaseColumnName
  375. properties while building Schema information as most drivers
  376. ignores these properties. e.g. PostgreSQL.
  377. 2005-03-24 Sureshkumar T <[email protected]>
  378. Appasamy <[email protected]>
  379. * OdbcColumn.cs: IsStringType: OdbcType.Char is also of type
  380. String.
  381. * OdbcDataReader.cs: GetSchemaTable: Get Additional info using
  382. SQLColAttribute. Don't pad with spaces in GetColAttributeStr.
  383. 2005-03-24 Sureshkumar T <[email protected]>
  384. * OdbcDataReader.cs:
  385. - GetValue: Decode only outsize length for SQL_C_TYPE.CHAR type in
  386. SQLGetData.
  387. - GetOrdinal: Perform case insensitive lookup if sensitive lookup
  388. fails.
  389. 2005-03-22 Sureshkumar T <[email protected]>
  390. Appsamy <[email protected]>
  391. * libodbc.cs (System.Data.Odbc): Added enum FieldIdentifier. Added
  392. library functions SQLPrimaryKeys, SQLBindCol and SQLColAttribute.
  393. * OdbcDataReader.cs: Implemented GetPrimaryKeys to get the primary
  394. keys associated with resultset using SQLPrimaryKeys.
  395. 2005-03-15 Sureshkumar T <[email protected]>
  396. * OdbcConnection.cs: re-throw error on exception in Open method.
  397. 2005-03-11 Sureshkumar T <[email protected]>
  398. * OdbcConnection.cs : notify state change through event. clean up
  399. handles in case any exception while opening a connection. NET_2_0
  400. uses base class's OnStateChange handler.
  401. 2005-03-10 Sureshkumar T <[email protected]>
  402. Migrated core classes to derive from ProviderBase instead of
  403. implementing IDb* interfaces. Most part of these files have been
  404. branched with #if NET_2_0/ONLY_1_1. Make sure any changes works
  405. with both the profiles.
  406. * OdbcFactory.cs: Concrete Factory for DbProviderFactory. Factory
  407. to generate Connection,Command,etc.
  408. * OdbcConnectionFactory.cs: Concrete factory for DbConnectionFactory.
  409. * OdbcTransaction.cs: migration and overrides.
  410. * OdbcCommandBuilder.cs: migration and overrides.
  411. * OdbcDataReader.cs: --do--. no command behavior member as it will
  412. be maintained in base provider class.
  413. * OdbcParameterCollection.cs: --do--. Now, local ArrayList is not
  414. maintained here, instead it is in base class. Most of the methods
  415. which operated on this list are not needed in NET_2_0.
  416. * OdbcConnection.cs: Migration. connectionString is maintained in
  417. DbConnectionBase class.
  418. * OdbcParameter.cs: Migration. Many of the local members like
  419. value,sourceColumn are maintained in DbParameterBase.
  420. * OdbcCommand.cs: Migration. commandText,timeout and
  421. commandTimeOut are maintained in DbCommandBase class.
  422. 2005-03-10 Sureshkumar T <[email protected]>
  423. * OdbcType.cs: Added enums for SQL_TYPE & SQL_C_TYPE.
  424. * libodbc.cs: Accept SQL_C_TYPE for driver
  425. parameters. SQLBindParameter takes two parameters SQL_TYPE and
  426. SQL_C_TYPE. This caused the whole lot of changes done in this
  427. revision.
  428. * OdbcParameter.cs: Set default values of OdbcType & DbType. Pass
  429. mapped SQL_TYPE and SQL_C_TYPE to SQLBindParameter. Increase
  430. buffer size by 2 for additional ' chars.
  431. * OdbcTypeConverter.cs: Added class to convert between OdbcType,
  432. SQL_TYPE, SQL_C_TYPE.
  433. * OdbcColumn.cs: Added private members for SQL_TYPE and
  434. SQL_C_TYPE. conversion from/to odbctype to/from SQL_TYPE is done
  435. through OdbcTypeConverter class.
  436. * OdbcDataReader.cs: use OdbcColumn's SQL_C_TYPE member. It keeps
  437. track of default mapping between odbctype, SQL_TYPE and
  438. SQL_C_TYPE. Move dataTableSchema.AcceptChanges inside if condition
  439. to avoid null reference exception.
  440. 2005-02-04 Sureshkumar T <[email protected]>
  441. Appasamy <[email protected]>
  442. * OdbcConnection.cs: Implemented properties database, datasource,
  443. serverversion and driver.
  444. * libodbc.cs: Added type OdbcInfo and native call SQLGetInfo.
  445. 2005-01-20 Sureshkumar T <[email protected]>
  446. * OdbcDataReader.cs: case for type OdbcType.Double added in
  447. GetValue. fixes bug #71173.
  448. Thanks to patch given by "Appasamy T" <[email protected]>
  449. 2005-01-19 Sureshkumar T <[email protected]>
  450. * OdbcType.cs: Change enum values for compatiability with MS.NET.
  451. * libodbc.cs: Change enum values for compatiability with
  452. MS.NET. Change calls into driver with native type.
  453. * OdbcDataReader.cs: Change enum values for compatiability with
  454. MS.NET. Change calls from/into driver with native type.
  455. 2005-01-18 Sureshkumar T <[email protected]>
  456. * OdbcDataReader.cs: GetOrdinal need not check for
  457. currentRow. Return -1 if column name is not found.
  458. fixes bug #71261. Thanks to patch given by "Appasamy T"
  459. <[email protected]>.
  460. 2005-01-13 Sureshkumar T <[email protected]>
  461. * OdbcDataReader.cs: Implement NextResultSet for multiple result
  462. set queries.
  463. * OdbcDataReader.cs: build column schema once creating reader and
  464. then for each Next result set. Thanks to
  465. [email protected] (Sebastien Robitaille) for
  466. pointing out this optimization (bugzilla #70530).
  467. * libodbc.cs: Added library calls SQLFreeStmt and SQLMoreResults
  468. for mutiple resultsets.
  469. 2005-01-10 Sureshkumar T <[email protected]>
  470. * OdbcDataReader.cs: Connection has to be closed only after
  471. Statement handle is freed. fixes bug #70048.
  472. 2005-01-07 Sureshkumar T <[email protected]>
  473. * OdbcDataReader.cs: Pass OdbcCType.SignedBigInt for accessing big
  474. int columns.
  475. * OdbcType.cs: Added a new enum for Odbc C DataTypes. This should
  476. essentially be passed to drivers, since the public OdbcType types
  477. differs from types expected in drivers in some cases.
  478. * libodbc.cs : Added a ODBC method which takes OdbcCType
  479. enumeration for SQLGetData for BigInt fields.
  480. fixes bug #65342.
  481. 2004-12-28 Duncan Mak <[email protected]>
  482. * libodbc.cs: Change all the DllImport attributes to point to
  483. "odbc32.dll" instead of "odbc32", because /etc/mono/config lists
  484. "odbc32.dll" (all other entries in the file have the .dll suffix
  485. as well, for consistency's sake, let's rename it here.)
  486. This fixes #70727.
  487. 2004-12-03 Sureshkumar T <[email protected]>
  488. * OdbcParameter.cs: Fixed a null reference exception when a
  489. parameter is created and its value is not set. #68750.
  490. 2004-11-26 Sureshkumar T <[email protected]>
  491. * OdbcParameter.cs: Fixed Parameter Size property as well as
  492. insufficient buffer errors. bug #68749.
  493. 2004-09-14 Sebastien Pouliot <[email protected]>
  494. * OdbcPermission.cs: Added internal constructor accepting an Odbc
  495. PermissionAttribute parameter (using base class protected ctor).
  496. * OdbcPermissionAttribute.cs: Copy now use the new OdbcPermission
  497. constructor.
  498. 2004-09-13 Sebastien Pouliot <[email protected]>
  499. * OdbcPermission.cs: Mostly completed (needs tests).
  500. * OdbcPermissionAttribute.cs: Completed.
  501. 2004-08-31 Umadevi S ([email protected])
  502. * OdbcDataReader.cs - Fixed Decimal parsing
  503. 2004-08-30 Umadevi S ([email protected])
  504. * OdbcType.cs - removed inheritance from short.
  505. 2004-08-27 Sureshkumar T ([email protected])
  506. * OdbcDataReader.cs - fixed bug #63539 - TINYINT ODBC datatype is converted into System.Byte
  507. 2004-08-26 Sureshkumar T ([email protected])
  508. * OdbcDataReader.cs - Date & DateTime GetValue fixed.
  509. GetBytes ordinal parameter passing fixed for BINARY in GetValue.
  510. 2004-08-20 Sureshkumar T ([email protected])
  511. * OdbcConnection.cs - correct handles are passed to OdbcError exception to trap the correct error
  512. 2004-08-04 Umadevi S ([email protected])
  513. * OdbcDataReader.cs - Fixed bug 61832 - Column names were not filled, due to which name based lookup of columns failed.
  514. 2004-08-04 Umadevi S ([email protected])
  515. * OdbcDataReader.cs - Fixed bug 61405 - Handling smallint column type.
  516. 2004-07-30 Sureshkumar T ([email protected])
  517. * OdbcCommand.cs: ExecuteNonQuery Closed statement handle to fix memory leak
  518. * OdbcDataReader.cs: Closed statement handle to fix memory leak
  519. Removed SQLState login in GetBytes coz OdbcError provides the same.
  520. 2004-07-29 Umadevi S ([email protected])
  521. * OdbcCommand.cs - Fixed bug 62046. ExecuteNonQuery implemented correctly
  522. 2004-07-28 Umadevi S ([email protected])
  523. * OdbcParameter.cs - fixed bug 61968. String values passed with quotes
  524. 2004-07-07 Umadevi S ([email protected])
  525. * OdbcConnection.cs - Allowed Close to be called multiple times
  526. - Implementation of Dispose method
  527. 2004-07-07 Umadevi S ([email protected])
  528. * OdbcCommand.cs : fixed set method for Transaction
  529. 2004-07-01 Sureshkumar T ([email protected])
  530. * OdbcCommand.cs : fixed reader problem with ExecuteScalar
  531. 2004-06-23 Sureshkumar T ([email protected])
  532. * OdbcConnection.cs: Fix: Moved env allocation to Open method.
  533. Disconnection & freeing handles are done in Close
  534. method to avoid simultaneous connections.
  535. * libodbc.cs : Added constants for odbc version.
  536. 2004-06-16 Gert Driesen <[email protected]>
  537. * OdbcError.cs: fixed serialization compatibility with MS.NET
  538. * OdbcErrorCollection.cs: fixed serialization compatibility with
  539. MS.NET
  540. * OdbcException.cs: fixed serialization compatibility with MS.NET
  541. 2004-06-16 Sureshkumar T ([email protected])
  542. * OdbcDataReader.cs: Added GetValue support for Sql Binary type to return byte array.
  543. Implemented GetBytes method.
  544. * libodbc.cs : Added enums, constants & imports for above fix.
  545. 2004-06-13 Gert Driesen <[email protected]>
  546. * OdbcDataReader.cs: changed GetData method to return IDataReader
  547. to match MS.NET
  548. 2004-06-09 Sureshkumar T ([email protected])
  549. * OdbcDataReader.cs: Removed checking of currentRow in GetName
  550. method
  551. 2004-06-04 Gert Driesen <[email protected]>
  552. * OdbcPermission.cs: moved Obsolete attribute to correct
  553. ctor
  554. 2004-06-02 Sureshkumar T ([email protected])
  555. * OdbcDataReader.cs: Implemented GetByte method. Fixed bug #58820
  556. 2004-06-02 Gert Driesen <[email protected]>
  557. * OdbcParameter.cs: added missing attributes
  558. * OdbcPermission.cs: added missing attributes
  559. * OdbcConnection.cs: fixes attribute, added missing attributes
  560. * OdbcInfoMessageEventArgs.cs: removed extra properties, fixed
  561. API compatibility with MS.NET
  562. * OdbcCommandBuilder.cs: use correct attributes
  563. 2004-05-20 Gert Driesen ([email protected])
  564. * OdbcPermissionAttribute.cs: change AllowMultiple and
  565. Inherited to match .NET
  566. 2004-05-17 Umadevi S ([email protected])
  567. * OdbcPermissionAttribute, OdbcPermission.cs - fixed missing methods
  568. 2004-05-17 Gert Driesen ([email protected])
  569. * OdbcCategoryAttribute.cs: fixed namespace
  570. * OdbcDataAdapter.cs: removed extra attributes
  571. * OdbcDescriptionAttribute.cs: fixed namespace
  572. 2004-05-14 Umadevi S ([email protected])
  573. * OdbcParameterConverter.cs -Added
  574. * OdbcParameter.cs - Added some attributes
  575. 2004-05-14 Umadevi S ([email protected])
  576. * OdbcDataAdapter.cs - Added Attributes
  577. 2004-05-14 Umadevi S ([email protected])
  578. * OdbcConnection.cs - Added Attributes
  579. 2004-05-14 Umadevi S ([email protected])
  580. * OdbcCommand.cs - Added Attributes
  581. 2004-05-14 Umadevi S ([email protected])
  582. * OdbcDataReader.cs - Added Attributes
  583. 2004-05-14 Umadevi S ([email protected])
  584. * Added Classes OdbcCategoryAttribute.cs, OdbcDescriptionAttribute.cs
  585. 2004-05-14 Umadevi S ([email protected])
  586. * Added Class OdbcCommandBuilder.cs
  587. 2004-05-14 Umadevi S ([email protected])
  588. * Added classes OdbcInfoMessageEventArgs.cs - with stubs
  589. * Added classes OdbcInfoMessageEventInfo.cs
  590. 2004-05-14 Umadevi S ([email protected])
  591. * Added classes OdbcPermission.cs, OdbcPermissionAttribute.cs - with stubs
  592. 2004-05-09 Gert Driesen ([email protected])
  593. * OdbcException.cs : removed ErrorCode property, fixing signature
  594. * OdbcErrorCollection.cs : added internal ctor, reduced
  595. accessibility of Add method to internal
  596. * OdbcCommand.cs: marked hstmt field private, remove setters for
  597. Parameters property
  598. * OdbcDataReader.cs: Added GetDate method, renamed GetTimeSpan to
  599. GetTime to match MS.NET, added HasRows stub
  600. 2004-05-09 Gert Driesen ([email protected])
  601. * OdbcError.cs:
  602. * OdbcErrorCollection.cs:
  603. * OdbcException.cs: fixed linefeeds to DOS to match other
  604. sources in System.Data.Odbc
  605. 2004-05-09 Gert Driesen ([email protected])
  606. * OdbcCommand.cs: No longer use OdbcConnection.Datareader, in order
  607. to fix signature of OdbcConnection
  608. * OdbcDataReader.cs: No longer use ODbcConnection.Datareader, in
  609. order to fix signature of OdbcConnection
  610. * OdbcConnection.cs: Signature fixes: removed DataReader property,
  611. added setter for ConnectionTimeout, made transaction internal
  612. * OdbcParameter.cs: reduced accessibility of Bind method to
  613. internal, added setter for IsNullable
  614. * OdbcParameterCollection.cs: made default ctor and Bind method
  615. internal
  616. 2004-05-09 Gert Driesen ([email protected])
  617. * OdbcCommand.cs: fixed linefeeds to DOS to match other sources
  618. in System.Data.Odbc
  619. 2004-05-09 Gert Driesen ([email protected])
  620. * OdbcTransaction.cs: fixed signature to match MS.NET
  621. 2004-05-09 Gert Driesen ([email protected])
  622. * OdbcType.cs: fixed typo UniqueIndetifier
  623. * OdbcColumn.cs : fixed typo UniqueIndetifier
  624. 2004-05-09 Gert Driesen ([email protected])
  625. * OdbcType.cs: fixed linefeeds to DOS to match other sources
  626. in System.Data.Odbc
  627. 2003-12-01 Gonzalo Paniagua Javier <[email protected]>
  628. * OdbcTransaction.cs: applied patch from Jeff Seifert that makes
  629. this class implement IDbTransaction interface.
  630. 2002-11-01 Daniel Morgan <[email protected]>
  631. * OdbcDataReader.cs: - uncommented code, but I put a FIXME:
  632. according to Brian, this does not work on MS .NET however, we need it
  633. for Mono for now. schemaRow.AcceptChanges(),
  634. - implement IEnumerable.GetEnumerator()
  635. * libodbc.cs: changed the DllImport from "odbc32.dll" to "odbc32"
  636. 2002-10-21 Gonzalo Paniagua Javier <[email protected]>
  637. * ChangeLog: added.
  638. * OdbcError.cs:
  639. * OdbcException.cs: added dummy implementation for these missing
  640. classes.