Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Merge updates from trunk. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | tkt-c010fa6584 |
Files: | files | file ages | folders |
SHA1: |
5ad118c22e37a3155757e151bf4c8c88 |
User & Date: | mistachkin 2013-01-31 03:34:00.537 |
Context
2013-01-31
| ||
07:36 | Avoid throwing overflow exceptions from the SQLite3.GetValue method for integral column types. Fix for [c010fa6584]. Closed-Leaf check-in: 618f5890e7 user: mistachkin tags: tkt-c010fa6584 | |
03:34 | Merge updates from trunk. check-in: 5ad118c22e user: mistachkin tags: tkt-c010fa6584 | |
03:24 | Centralize building of the column type name map. Remove AUTOINCREMENT from the column type name map. Add BIGUINT, SMALLUINT, TINYSINT, and ULONG to the column type name map. check-in: c7b39f9c3b user: mistachkin tags: trunk | |
02:25 | Add test for ticket [c010fa6584]. check-in: 064c0bbe3d user: mistachkin tags: tkt-c010fa6584 | |
Changes
Changes to Doc/Extra/version.html.
︙ | ︙ | |||
45 46 47 48 49 50 51 | <h1 class="heading">Version History</h1> <p><b>1.0.85.0 - March XX, 2013 <font color="red">(release scheduled)</font></b></p> <ul> <li>Updated to <a href="http://www.sqlite.org/src/info/trunk">SQLite 3.7.16</a>.</li> <li>Add static Execute method to the SQLiteCommand class.</li> <li>Add public constructor to the SQLiteDataAdapter class that allows passing the parseViaFramework parameter to the SQLiteConnection constructor.</li> <li>When built with the CHECK_STATE compile-time option, skip throwing exceptions from the SQLiteDataReader class when the object is being disposed.</li> | | > | 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 | <h1 class="heading">Version History</h1> <p><b>1.0.85.0 - March XX, 2013 <font color="red">(release scheduled)</font></b></p> <ul> <li>Updated to <a href="http://www.sqlite.org/src/info/trunk">SQLite 3.7.16</a>.</li> <li>Add static Execute method to the SQLiteCommand class.</li> <li>Add public constructor to the SQLiteDataAdapter class that allows passing the parseViaFramework parameter to the SQLiteConnection constructor.</li> <li>When built with the CHECK_STATE compile-time option, skip throwing exceptions from the SQLiteDataReader class when the object is being disposed.</li> <li>Support automatic value conversions for columns with a declared type of BIGUINT, INTEGER8, INTEGER16, INTEGER32, INTEGER64, SMALLUINT, TINYSINT, UNSIGNEDINTEGER, UNSIGNEDINTEGER8, UNSIGNEDINTEGER16, UNSIGNEDINTEGER32, UNSIGNEDINTEGER64, INT8, INT16, INT32, INT64, UINT, UINT8, UINT16, UINT32, UINT64, or ULONG.</li> <li>Remove AUTOINCREMENT from the column type name map. <b>** Potentially Incompatible Change **</b></li> </ul> <p><b>1.0.84.0 - January 9, 2013</b></p> <ul> <li>Updated to <a href="http://www.sqlite.org/releaselog/3_7_15_2.html">SQLite 3.7.15.2</a>.</li> <li>Explicitly dispose of all SQLiteCommand objects managed by the DbDataAdapter class. Fix for <a href="http://system.data.sqlite.org/index.html/info/6434e23a0f">[6434e23a0f]</a>.</li> <li>Add Cancel method to the SQLiteConnection class to interrupt a long running query.</li> <li>Improve thread safety of the SQLiteLog.LogMessage method.</li> |
︙ | ︙ |
Changes to System.Data.SQLite/SQLiteConvert.cs.
︙ | ︙ | |||
743 744 745 746 747 748 749 | "WARNING: Type mapping failed, returning default name \"{0}\" for type {1}.", defaultTypeName, typ)); #endif return defaultTypeName; } | | | < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < | 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 | "WARNING: Type mapping failed, returning default name \"{0}\" for type {1}.", defaultTypeName, typ)); #endif return defaultTypeName; } private static SQLiteTypeNames[] _dbtypeNames = GetSQLiteTypeNames(); /// <summary> /// Convert a DbType to a Type /// </summary> /// <param name="typ">The DbType to convert from</param> /// <returns>The closest-match .NET type</returns> internal static Type DbTypeToType(DbType typ) { |
︙ | ︙ | |||
856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 | TypeAffinity.Double, TypeAffinity.Double, TypeAffinity.Double, TypeAffinity.DateTime, TypeAffinity.Null, TypeAffinity.Text, }; /// <summary> /// For a given type name, return a closest-match .NET type /// </summary> /// <param name="Name">The name of the type to match</param> /// <returns>The .NET DBType the text evaluates to.</returns> internal static DbType TypeNameToDbType(string Name) { lock (_syncRoot) { if (_typeNames == null) { _typeNames = new Dictionary<string, SQLiteTypeNames>( new TypeNameStringComparer()); | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < | 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 | TypeAffinity.Double, TypeAffinity.Double, TypeAffinity.Double, TypeAffinity.DateTime, TypeAffinity.Null, TypeAffinity.Text, }; /// <summary> /// Builds and returns an array containing the database column types /// recognized by this provider. /// </summary> /// <returns> /// An array containing the database column types recognized by this /// provider. /// </returns> private static SQLiteTypeNames[] GetSQLiteTypeNames() { return new SQLiteTypeNames[] { new SQLiteTypeNames("BIGINT", DbType.Int64), new SQLiteTypeNames("BIGUINT", DbType.UInt64), new SQLiteTypeNames("BINARY", DbType.Binary), new SQLiteTypeNames("BIT", DbType.Boolean), new SQLiteTypeNames("BLOB", DbType.Binary), new SQLiteTypeNames("BOOL", DbType.Boolean), new SQLiteTypeNames("BOOLEAN", DbType.Boolean), new SQLiteTypeNames("CHAR", DbType.AnsiStringFixedLength), new SQLiteTypeNames("COUNTER", DbType.Int64), new SQLiteTypeNames("CURRENCY", DbType.Decimal), new SQLiteTypeNames("DATE", DbType.DateTime), new SQLiteTypeNames("DATETIME", DbType.DateTime), new SQLiteTypeNames("DECIMAL", DbType.Decimal), new SQLiteTypeNames("DOUBLE", DbType.Double), new SQLiteTypeNames("FLOAT", DbType.Double), new SQLiteTypeNames("GENERAL", DbType.Binary), new SQLiteTypeNames("GUID", DbType.Guid), new SQLiteTypeNames("IDENTITY", DbType.Int64), new SQLiteTypeNames("IMAGE", DbType.Binary), new SQLiteTypeNames("INT", DbType.Int32), new SQLiteTypeNames("INT8", DbType.SByte), new SQLiteTypeNames("INT16", DbType.Int16), new SQLiteTypeNames("INT32", DbType.Int32), new SQLiteTypeNames("INT64", DbType.Int64), new SQLiteTypeNames("INTEGER", DbType.Int64), new SQLiteTypeNames("INTEGER8", DbType.SByte), new SQLiteTypeNames("INTEGER16", DbType.Int16), new SQLiteTypeNames("INTEGER32", DbType.Int32), new SQLiteTypeNames("INTEGER64", DbType.Int64), new SQLiteTypeNames("LOGICAL", DbType.Boolean), new SQLiteTypeNames("LONG", DbType.Int64), new SQLiteTypeNames("LONGCHAR", DbType.String), new SQLiteTypeNames("LONGTEXT", DbType.String), new SQLiteTypeNames("LONGVARCHAR", DbType.String), new SQLiteTypeNames("MEMO", DbType.String), new SQLiteTypeNames("MONEY", DbType.Decimal), new SQLiteTypeNames("NCHAR", DbType.StringFixedLength), new SQLiteTypeNames("NOTE", DbType.String), new SQLiteTypeNames("NTEXT", DbType.String), new SQLiteTypeNames("NUMERIC", DbType.Decimal), new SQLiteTypeNames("NVARCHAR", DbType.String), new SQLiteTypeNames("OLEOBJECT", DbType.Binary), new SQLiteTypeNames("REAL", DbType.Double), new SQLiteTypeNames("SMALLDATE", DbType.DateTime), new SQLiteTypeNames("SMALLINT", DbType.Int16), new SQLiteTypeNames("SMALLUINT", DbType.UInt16), new SQLiteTypeNames("STRING", DbType.String), new SQLiteTypeNames("TEXT", DbType.String), new SQLiteTypeNames("TIME", DbType.DateTime), new SQLiteTypeNames("TIMESTAMP", DbType.DateTime), new SQLiteTypeNames("TINYINT", DbType.Byte), new SQLiteTypeNames("TINYSINT", DbType.SByte), new SQLiteTypeNames("UINT", DbType.UInt32), new SQLiteTypeNames("UINT8", DbType.Byte), new SQLiteTypeNames("UINT16", DbType.UInt16), new SQLiteTypeNames("UINT32", DbType.UInt32), new SQLiteTypeNames("UINT64", DbType.UInt64), new SQLiteTypeNames("ULONG", DbType.UInt64), new SQLiteTypeNames("UNIQUEIDENTIFIER", DbType.Guid), new SQLiteTypeNames("UNSIGNEDINTEGER", DbType.UInt64), new SQLiteTypeNames("UNSIGNEDINTEGER8", DbType.Byte), new SQLiteTypeNames("UNSIGNEDINTEGER16", DbType.UInt16), new SQLiteTypeNames("UNSIGNEDINTEGER32", DbType.UInt32), new SQLiteTypeNames("UNSIGNEDINTEGER64", DbType.UInt64), new SQLiteTypeNames("VARBINARY", DbType.Binary), new SQLiteTypeNames("VARCHAR", DbType.AnsiString), new SQLiteTypeNames("YESNO", DbType.Boolean) }; } /// <summary> /// For a given type name, return a closest-match .NET type /// </summary> /// <param name="Name">The name of the type to match</param> /// <returns>The .NET DBType the text evaluates to.</returns> internal static DbType TypeNameToDbType(string Name) { lock (_syncRoot) { if (_typeNames == null) { _typeNames = new Dictionary<string, SQLiteTypeNames>( new TypeNameStringComparer()); foreach (SQLiteTypeNames typeName in GetSQLiteTypeNames()) _typeNames.Add(typeName.typeName, typeName); } } if (String.IsNullOrEmpty(Name)) return DbType.Object; SQLiteTypeNames value; |
︙ | ︙ |
Changes to Tests/basic.eagle.
︙ | ︙ | |||
1429 1430 1431 1432 1433 1434 1435 | [object invoke -flags +NonPublic System.Data.SQLite.SQLiteConvert \ TypeNameToDbType "NVARCHAR(1)"] \ [object invoke -flags +NonPublic System.Data.SQLite.SQLiteConvert \ TypeNameToDbType "VARCHAR (1)"] \ [object invoke -flags +NonPublic System.Data.SQLite.SQLiteConvert \ TypeNameToDbType "NVARCHAR (1)"] \ } -constraints {eagle System.Data.SQLite} -result \ | | | 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 | [object invoke -flags +NonPublic System.Data.SQLite.SQLiteConvert \ TypeNameToDbType "NVARCHAR(1)"] \ [object invoke -flags +NonPublic System.Data.SQLite.SQLiteConvert \ TypeNameToDbType "VARCHAR (1)"] \ [object invoke -flags +NonPublic System.Data.SQLite.SQLiteConvert \ TypeNameToDbType "NVARCHAR (1)"] \ } -constraints {eagle System.Data.SQLite} -result \ {AnsiString String AnsiString String AnsiString String}} ############################################################################### runTest {test data-1.28 {SetMemoryStatus method} -setup { # # NOTE: Make sure that SQLite core library is completely shutdown prior to # starting this test. |
︙ | ︙ |
Changes to readme.htm.
︙ | ︙ | |||
190 191 192 193 194 195 196 | <b>1.0.85.0 - March XX, 2013 <font color="red">(release scheduled)</font></b> </p> <ul> <li>Updated to <a href="http://www.sqlite.org/src/info/trunk">SQLite 3.7.16</a>.</li> <li>Add static Execute method to the SQLiteCommand class.</li> <li>Add public constructor to the SQLiteDataAdapter class that allows passing the parseViaFramework parameter to the SQLiteConnection constructor.</li> <li>When built with the CHECK_STATE compile-time option, skip throwing exceptions from the SQLiteDataReader class when the object is being disposed.</li> | | > | 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 | <b>1.0.85.0 - March XX, 2013 <font color="red">(release scheduled)</font></b> </p> <ul> <li>Updated to <a href="http://www.sqlite.org/src/info/trunk">SQLite 3.7.16</a>.</li> <li>Add static Execute method to the SQLiteCommand class.</li> <li>Add public constructor to the SQLiteDataAdapter class that allows passing the parseViaFramework parameter to the SQLiteConnection constructor.</li> <li>When built with the CHECK_STATE compile-time option, skip throwing exceptions from the SQLiteDataReader class when the object is being disposed.</li> <li>Support automatic value conversions for columns with a declared type of BIGUINT, INTEGER8, INTEGER16, INTEGER32, INTEGER64, SMALLUINT, TINYSINT, UNSIGNEDINTEGER, UNSIGNEDINTEGER8, UNSIGNEDINTEGER16, UNSIGNEDINTEGER32, UNSIGNEDINTEGER64, INT8, INT16, INT32, INT64, UINT, UINT8, UINT16, UINT32, UINT64, or ULONG.</li> <li>Remove AUTOINCREMENT from the column type name map. <b>** Potentially Incompatible Change **</b></li> </ul> <p> <b>1.0.84.0 - January 9, 2013</b> </p> <ul> <li>Updated to <a href="http://www.sqlite.org/releaselog/3_7_15_2.html">SQLite 3.7.15.2</a>.</li> <li>Explicitly dispose of all SQLiteCommand objects managed by the DbDataAdapter class. Fix for [6434e23a0f].</li> |
︙ | ︙ |
Changes to www/news.wiki.
1 2 3 4 5 6 7 8 9 10 11 12 | <title>News</title> <b>Version History</b> <p> <b>1.0.85.0 - March XX, 2013 <font color="red">(release scheduled)</font></b> </p> <ul> <li>Updated to [http://www.sqlite.org/src/info/trunk|SQLite 3.7.16].</li> <li>Add static Execute method to the SQLiteCommand class.</li> <li>Add public constructor to the SQLiteDataAdapter class that allows passing the parseViaFramework parameter to the SQLiteConnection constructor.</li> <li>When built with the CHECK_STATE compile-time option, skip throwing exceptions from the SQLiteDataReader class when the object is being disposed.</li> | | > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <title>News</title> <b>Version History</b> <p> <b>1.0.85.0 - March XX, 2013 <font color="red">(release scheduled)</font></b> </p> <ul> <li>Updated to [http://www.sqlite.org/src/info/trunk|SQLite 3.7.16].</li> <li>Add static Execute method to the SQLiteCommand class.</li> <li>Add public constructor to the SQLiteDataAdapter class that allows passing the parseViaFramework parameter to the SQLiteConnection constructor.</li> <li>When built with the CHECK_STATE compile-time option, skip throwing exceptions from the SQLiteDataReader class when the object is being disposed.</li> <li>Support automatic value conversions for columns with a declared type of BIGUINT, INTEGER8, INTEGER16, INTEGER32, INTEGER64, SMALLUINT, TINYSINT, UNSIGNEDINTEGER, UNSIGNEDINTEGER8, UNSIGNEDINTEGER16, UNSIGNEDINTEGER32, UNSIGNEDINTEGER64, INT8, INT16, INT32, INT64, UINT, UINT8, UINT16, UINT32, UINT64, or ULONG.</li> <li>Remove AUTOINCREMENT from the column type name map. <b>** Potentially Incompatible Change **</b></li> </ul> <p> <b>1.0.84.0 - January 9, 2013</b> </p> <ul> <li>Updated to [http://www.sqlite.org/releaselog/3_7_15_2.html|SQLite 3.7.15.2].</li> <li>Explicitly dispose of all SQLiteCommand objects managed by the DbDataAdapter class. Fix for [6434e23a0f].</li> |
︙ | ︙ |