Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Add UnbindAllFunctions method to the SQLiteConnection class. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
7d103d8fd54696311c949f1c4585d015 |
User & Date: | mistachkin 2015-07-17 20:37:22.652 |
Context
2015-07-21
| ||
22:54 | Add full support for Visual Studio 2015 and the .NET Framework 4.6. check-in: 52f2ca84c7 user: mistachkin tags: trunk | |
2015-07-20
| ||
17:27 | Initial updates to support Visual Studio 2015. check-in: d3a5e943d5 user: mistachkin tags: vs2015 | |
2015-07-17
| ||
20:37 | Add UnbindAllFunctions method to the SQLiteConnection class. check-in: 7d103d8fd5 user: mistachkin tags: trunk | |
02:46 | Update Trace.WriteLine calls for consistency. Revise when calls to UnbindFunctions are made. check-in: 7c3cad7da2 user: mistachkin tags: trunk | |
Changes
Changes to Doc/Extra/Provider/version.html.
︙ | ︙ | |||
52 53 54 55 56 57 58 | <li>Change the base type for the SQLiteConnectionFlags enumeration to long integer. <b>** Potentially Incompatible Change **</b></li> <li>Add extended return codes to the SQLiteErrorCode enumeration. Pursuant to <a href="https://system.data.sqlite.org/index.html/info/71bedaca19">[71bedaca19]</a>. <b>** Potentially Incompatible Change **</b></li> <li>Improve exception handling in all native callbacks implemented in the SQLiteConnection class.</li> <li>Add Progress event and ProgressOps connection string property to enable raising progress events during long-running queries.</li> <li>Add NoDefaultFlags connection string property to prevent the default connection flags from being used. Pursuant to <a href="https://system.data.sqlite.org/index.html/info/964063da16">[964063da16]</a>.</li> <li>Add VfsName connection string property to allow a non-default VFS to be used by the SQLite core library.</li> <li>Add BusyTimeout connection string property to set the busy timeout to be used by the SQLite core library.</li> | | | 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | <li>Change the base type for the SQLiteConnectionFlags enumeration to long integer. <b>** Potentially Incompatible Change **</b></li> <li>Add extended return codes to the SQLiteErrorCode enumeration. Pursuant to <a href="https://system.data.sqlite.org/index.html/info/71bedaca19">[71bedaca19]</a>. <b>** Potentially Incompatible Change **</b></li> <li>Improve exception handling in all native callbacks implemented in the SQLiteConnection class.</li> <li>Add Progress event and ProgressOps connection string property to enable raising progress events during long-running queries.</li> <li>Add NoDefaultFlags connection string property to prevent the default connection flags from being used. Pursuant to <a href="https://system.data.sqlite.org/index.html/info/964063da16">[964063da16]</a>.</li> <li>Add VfsName connection string property to allow a non-default VFS to be used by the SQLite core library.</li> <li>Add BusyTimeout connection string property to set the busy timeout to be used by the SQLite core library.</li> <li>Add UnbindFunction and UnbindAllFunctions methods to the SQLiteConnection class.</li> <li>Enable integration with the <a href="http://www.hwaci.com/sw/sqlite/zipvfs.html">ZipVFS</a> extension.</li> </ul> <p><b>1.0.97.0 - May 26, 2015</b></p> <ul> <li>Updated to <a href="https://www.sqlite.org/releaselog/3_8_10_2.html">SQLite 3.8.10.2</a>.</li> <li>Updated to <a href="https://www.nuget.org/packages/EntityFramework/6.1.3">Entity Framework 6.1.3</a>.</li> <li>Improve ADO.NET conformance of the SQLiteDataReader.RecordsAffected property. Fix for <a href="https://system.data.sqlite.org/index.html/info/74542e702e">[74542e702e]</a>. <b>** Potentially Incompatible Change **</b></li> |
︙ | ︙ |
Changes to System.Data.SQLite/SQLite3.cs.
︙ | ︙ | |||
241 242 243 244 245 246 247 | if (_usePool) { if (SQLiteBase.ResetConnection(_sql, _sql, canThrow)) { if (unbindFunctions) { | | | 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 | if (_usePool) { if (SQLiteBase.ResetConnection(_sql, _sql, canThrow)) { if (unbindFunctions) { if (SQLiteFunction.UnbindAllFunctions(this, _flags, false)) { #if !NET_COMPACT_20 && TRACE_CONNECTION Trace.WriteLine(String.Format( CultureInfo.CurrentCulture, "UnbindFunctions (Pool) Success: {0}", HandleToString())); #endif |
︙ | ︙ | |||
293 294 295 296 297 298 299 | } #endif } else { if (unbindFunctions) { | | | 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 | } #endif } else { if (unbindFunctions) { if (SQLiteFunction.UnbindAllFunctions(this, _flags, false)) { #if !NET_COMPACT_20 && TRACE_CONNECTION Trace.WriteLine(String.Format( CultureInfo.CurrentCulture, "UnbindFunctions Success: {0}", HandleToString())); #endif |
︙ | ︙ |
Changes to System.Data.SQLite/SQLiteConnection.cs.
︙ | ︙ | |||
1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 | if (_sql == null) throw new InvalidOperationException( "Database connection not valid for unbinding functions."); return _sql.UnbindFunction(functionAttribute, _flags); } /////////////////////////////////////////////////////////////////////////////////////////////// [Conditional("CHECK_STATE")] internal static void Check(SQLiteConnection connection) { if (connection == null) | > > > > > > > > > > > > > > > > > > > > > > > > > > | 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 | if (_sql == null) throw new InvalidOperationException( "Database connection not valid for unbinding functions."); return _sql.UnbindFunction(functionAttribute, _flags); } /////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> /// This method unbinds all registered (known) functions -OR- all previously /// bound user-defined functions from this connection. /// </summary> /// <param name="registered"> /// Non-zero to unbind all registered (known) functions -OR- zero to unbind /// all functions currently bound to the connection. /// </param> /// <returns> /// Non-zero if all the specified user-defined functions were unbound. /// </returns> public bool UnbindAllFunctions( bool registered ) { CheckDisposed(); if (_sql == null) throw new InvalidOperationException( "Database connection not valid for unbinding functions."); return SQLiteFunction.UnbindAllFunctions(_sql, _flags, registered); } /////////////////////////////////////////////////////////////////////////////////////////////// [Conditional("CHECK_STATE")] internal static void Check(SQLiteConnection connection) { if (connection == null) |
︙ | ︙ |
Changes to System.Data.SQLite/SQLiteFunction.cs.
︙ | ︙ | |||
75 76 77 78 79 80 81 | /// <summary> /// Current context of the current callback. Only valid during a callback /// </summary> internal IntPtr _context; /// <summary> | | | | | 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 | /// <summary> /// Current context of the current callback. Only valid during a callback /// </summary> internal IntPtr _context; /// <summary> /// This static dictionary contains all the registered (known) user-defined /// functions declared using the proper attributes. The contained dictionary /// values are always null and are not currently used. /// </summary> private static IDictionary<SQLiteFunctionAttribute, object> _registeredFunctions; /// <summary> /// Internal constructor, initializes the function's internal variables. /// </summary> protected SQLiteFunction() |
︙ | ︙ | |||
740 741 742 743 744 745 746 | at.InstanceType = typ; _registeredFunctions.Add(at, null); } } } /// <summary> | | | 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 | at.InstanceType = typ; _registeredFunctions.Add(at, null); } } } /// <summary> /// Called by the SQLiteBase derived classes, this method binds all registered (known) user-defined functions to a connection. /// It is done this way so that all user-defined functions will access the database using the same encoding scheme /// as the connection (UTF-8 or UTF-16). /// </summary> /// <remarks> /// The wrapper functions that interop with SQLite will create a unique cookie value, which internally is a pointer to /// all the wrapped callback functions. The interop function uses it to map CDecl callbacks to StdCall callbacks. /// </remarks> |
︙ | ︙ | |||
778 779 780 781 782 783 784 | lFunctions[pr] = f; } return lFunctions; } /// <summary> | | | | | | 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 | lFunctions[pr] = f; } return lFunctions; } /// <summary> /// Called by the SQLiteBase derived classes, this method unbinds all registered (known) /// functions -OR- all previously bound user-defined functions from a connection. /// </summary> /// <param name="sqlbase">The base object from which the functions are to be unbound.</param> /// <param name="flags">The flags associated with the parent connection object.</param> /// <param name="registered"> /// Non-zero to unbind all registered (known) functions -OR- zero to unbind all functions /// currently bound to the connection. /// </param> /// <returns>Non-zero if all the specified user-defined functions were unbound.</returns> internal static bool UnbindAllFunctions( SQLiteBase sqlbase, SQLiteConnectionFlags flags, bool registered ) { if (sqlbase == null) return false; |
︙ | ︙ |
Changes to readme.htm.
︙ | ︙ | |||
219 220 221 222 223 224 225 | <li>Change the base type for the SQLiteConnectionFlags enumeration to long integer. <b>** Potentially Incompatible Change **</b></li> <li>Add extended return codes to the SQLiteErrorCode enumeration. Pursuant to [71bedaca19]. <b>** Potentially Incompatible Change **</b></li> <li>Improve exception handling in all native callbacks implemented in the SQLiteConnection class.</li> <li>Add Progress event and ProgressOps connection string property to enable raising progress events during long-running queries.</li> <li>Add NoDefaultFlags connection string property to prevent the default connection flags from being used. Pursuant to [964063da16].</li> <li>Add VfsName connection string property to allow a non-default VFS to be used by the SQLite core library.</li> <li>Add BusyTimeout connection string property to set the busy timeout to be used by the SQLite core library.</li> | | | 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 | <li>Change the base type for the SQLiteConnectionFlags enumeration to long integer. <b>** Potentially Incompatible Change **</b></li> <li>Add extended return codes to the SQLiteErrorCode enumeration. Pursuant to [71bedaca19]. <b>** Potentially Incompatible Change **</b></li> <li>Improve exception handling in all native callbacks implemented in the SQLiteConnection class.</li> <li>Add Progress event and ProgressOps connection string property to enable raising progress events during long-running queries.</li> <li>Add NoDefaultFlags connection string property to prevent the default connection flags from being used. Pursuant to [964063da16].</li> <li>Add VfsName connection string property to allow a non-default VFS to be used by the SQLite core library.</li> <li>Add BusyTimeout connection string property to set the busy timeout to be used by the SQLite core library.</li> <li>Add UnbindFunction and UnbindAllFunctions methods to the SQLiteConnection class.</li> <li>Enable integration with the <a href="http://www.hwaci.com/sw/sqlite/zipvfs.html">ZipVFS</a> extension.</li> </ul> <p> <b>1.0.97.0 - May 26, 2015</b> </p> <ul> <li>Updated to <a href="https://www.sqlite.org/releaselog/3_8_10_2.html">SQLite 3.8.10.2</a>.</li> |
︙ | ︙ |
Changes to www/news.wiki.
︙ | ︙ | |||
13 14 15 16 17 18 19 | <li>Change the base type for the SQLiteConnectionFlags enumeration to long integer. <b>** Potentially Incompatible Change **</b></li> <li>Add extended return codes to the SQLiteErrorCode enumeration. Pursuant to [71bedaca19]. <b>** Potentially Incompatible Change **</b></li> <li>Improve exception handling in all native callbacks implemented in the SQLiteConnection class.</li> <li>Add Progress event and ProgressOps connection string property to enable raising progress events during long-running queries.</li> <li>Add NoDefaultFlags connection string property to prevent the default connection flags from being used. Pursuant to [964063da16].</li> <li>Add VfsName connection string property to allow a non-default VFS to be used by the SQLite core library.</li> <li>Add BusyTimeout connection string property to set the busy timeout to be used by the SQLite core library.</li> | | | 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | <li>Change the base type for the SQLiteConnectionFlags enumeration to long integer. <b>** Potentially Incompatible Change **</b></li> <li>Add extended return codes to the SQLiteErrorCode enumeration. Pursuant to [71bedaca19]. <b>** Potentially Incompatible Change **</b></li> <li>Improve exception handling in all native callbacks implemented in the SQLiteConnection class.</li> <li>Add Progress event and ProgressOps connection string property to enable raising progress events during long-running queries.</li> <li>Add NoDefaultFlags connection string property to prevent the default connection flags from being used. Pursuant to [964063da16].</li> <li>Add VfsName connection string property to allow a non-default VFS to be used by the SQLite core library.</li> <li>Add BusyTimeout connection string property to set the busy timeout to be used by the SQLite core library.</li> <li>Add UnbindFunction and UnbindAllFunctions methods to the SQLiteConnection class.</li> <li>Enable integration with the [http://www.hwaci.com/sw/sqlite/zipvfs.html|ZipVFS] extension.</li> </ul> <p> <b>1.0.97.0 - May 26, 2015</b> </p> <ul> <li>Updated to [https://www.sqlite.org/releaselog/3_8_10_2.html|SQLite 3.8.10.2].</li> |
︙ | ︙ |