Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Modify the index introspection code so that it does not treat PRAGMA table_info 'pk' column values as boolean. Fix for [f2c47a01eb]. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
8d0c39afd29b2c864e062ab43bd1682e |
User & Date: | mistachkin 2013-06-26 23:50:27.268 |
Context
2013-06-26
| ||
23:52 | Fix typo. check-in: 814c7ebe55 user: mistachkin tags: trunk | |
23:50 | Modify the index introspection code so that it does not treat PRAGMA table_info 'pk' column values as boolean. Fix for [f2c47a01eb]. check-in: 8d0c39afd2 user: mistachkin tags: trunk | |
18:17 | Add an example to the SQLiteModuleEnumerable class doc comments. check-in: e539f17af4 user: mistachkin tags: trunk | |
Changes
Changes to Doc/Extra/version.html.
︙ | ︙ | |||
44 45 46 47 48 49 50 51 52 53 54 55 56 57 | <div id="mainBody"> <h1 class="heading">Version History</h1> <p><b>1.0.87.0 - June XX, 2013 <font color="red">(release scheduled)</font></b></p> <ul> <li>Add all the necessary infrastructure to allow virtual tables to be implemented in managed code. Fix for <a href="http://system.data.sqlite.org/index.html/info/9a544991be">[9a544991be]</a>.</li> <li>The DbType to type name translation needs to prioritize the Entity Framework type names. Fix for <a href="http://system.data.sqlite.org/index.html/info/47f4bac575">[47f4bac575]</a>.</li> <li>Add DateTimeFormatString connection string property to allow the DateTime format string used for all parsing and formatting to be overridden.</li> <li>Disable use of the new connection string parsing algorithm when the No_SQLiteConnectionNewParser environment variable is set. Pursuant to <a href="http://system.data.sqlite.org/index.html/info/bbdda6eae2">[bbdda6eae2]</a>.</li> <li>Rename the ReturnCode property of the SQLiteException class to ResultCode. <b>** Potentially Incompatible Change **</b></li> </ul> <p><b>1.0.86.0 - May 23, 2013</b></p> <ul> <li>Updated to <a href="http://www.sqlite.org/releaselog/3_7_17.html">SQLite 3.7.17</a>.</li> <li>Disable use of the AllowPartiallyTrustedCallers attribute when compiled for the .NET Framework 4.0/4.5. <b>** Potentially Incompatible Change **</b></li> | > | 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | <div id="mainBody"> <h1 class="heading">Version History</h1> <p><b>1.0.87.0 - June XX, 2013 <font color="red">(release scheduled)</font></b></p> <ul> <li>Add all the necessary infrastructure to allow virtual tables to be implemented in managed code. Fix for <a href="http://system.data.sqlite.org/index.html/info/9a544991be">[9a544991be]</a>.</li> <li>The DbType to type name translation needs to prioritize the Entity Framework type names. Fix for <a href="http://system.data.sqlite.org/index.html/info/47f4bac575">[47f4bac575]</a>.</li> <li>Add DateTimeFormatString connection string property to allow the DateTime format string used for all parsing and formatting to be overridden.</li> <li>Modify the index introspection code so that it does not treat PRAGMA table_info "pk" column values as boolean. Fix for <a href="http://system.data.sqlite.org/index.html/info/f2c47a01eb">[f2c47a01eb]</a>.</li> <li>Disable use of the new connection string parsing algorithm when the No_SQLiteConnectionNewParser environment variable is set. Pursuant to <a href="http://system.data.sqlite.org/index.html/info/bbdda6eae2">[bbdda6eae2]</a>.</li> <li>Rename the ReturnCode property of the SQLiteException class to ResultCode. <b>** Potentially Incompatible Change **</b></li> </ul> <p><b>1.0.86.0 - May 23, 2013</b></p> <ul> <li>Updated to <a href="http://www.sqlite.org/releaselog/3_7_17.html">SQLite 3.7.17</a>.</li> <li>Disable use of the AllowPartiallyTrustedCallers attribute when compiled for the .NET Framework 4.0/4.5. <b>** Potentially Incompatible Change **</b></li> |
︙ | ︙ |
Changes to System.Data.SQLite/SQLiteConnection.cs.
︙ | ︙ | |||
3044 3045 3046 3047 3048 3049 3050 | try { using (SQLiteCommand cmdTable = new SQLiteCommand(String.Format(CultureInfo.InvariantCulture, "PRAGMA [{0}].table_info([{1}])", strCatalog, rdTables.GetString(2)), this)) using (SQLiteDataReader rdTable = cmdTable.ExecuteReader()) { while (rdTable.Read()) { | | | 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 | try { using (SQLiteCommand cmdTable = new SQLiteCommand(String.Format(CultureInfo.InvariantCulture, "PRAGMA [{0}].table_info([{1}])", strCatalog, rdTables.GetString(2)), this)) using (SQLiteDataReader rdTable = cmdTable.ExecuteReader()) { while (rdTable.Read()) { if (rdTable.GetInt32(5) != 0) { primaryKeys.Add(rdTable.GetInt32(0)); // If the primary key is of type INTEGER, then its a rowid and we need to make a fake index entry for it. if (String.Compare(rdTable.GetString(2), "INTEGER", StringComparison.OrdinalIgnoreCase) == 0) maybeRowId = true; } |
︙ | ︙ |
Added Tests/tkt-f2c47a01eb.eagle.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 | ############################################################################### # # tkt-f2c47a01eb.eagle -- # # Written by Joe Mistachkin. # Released to the public domain, use at your own risk! # ############################################################################### package require Eagle package require Eagle.Library package require Eagle.Test runTestPrologue ############################################################################### package require System.Data.SQLite.Test runSQLiteTestPrologue ############################################################################### runTest {test tkt-f2c47a01eb-1.1 {GetSchema w/INDEXES, PK} -setup { setupDb [set fileName tkt-f2c47a01eb-1.1.db] } -body { set connection [getDbConnection] sql execute $db "CREATE TABLE t1(x TEXT PRIMARY KEY, y TEXT);" sql execute $db "CREATE INDEX t1_1 ON t1(x, y);" sql execute $db "CREATE UNIQUE INDEX t1_2 ON t1(x, y);" set dataTable [$connection -alias GetSchema INDEXES] set results [list] object foreach -alias dataRow [set dataRows [$dataTable -alias Rows]] { lappend results [list [$dataRow Item TABLE_NAME] \ [$dataRow Item INDEX_NAME] [$dataRow Item PRIMARY_KEY]] } set results } -cleanup { cleanupDb $fileName freeDbConnection unset -nocomplain dataRow dataRows dataTable results connection db fileName } -constraints \ {eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} \ -result {{t1 t1_2 False} {t1 t1_1 False} {t1 sqlite_autoindex_t1_1 True}}} ############################################################################### runTest {test tkt-f2c47a01eb-1.2 {GetSchema w/INDEXES, composite PK} -setup { setupDb [set fileName tkt-f2c47a01eb-1.2.db] } -body { set connection [getDbConnection] sql execute $db "CREATE TABLE t1(x TEXT, y TEXT, PRIMARY KEY(x, y));" sql execute $db "CREATE INDEX t1_1 ON t1(x, y);" sql execute $db "CREATE UNIQUE INDEX t1_2 ON t1(x, y);" set dataTable [$connection -alias GetSchema INDEXES] set results [list] object foreach -alias dataRow [set dataRows [$dataTable -alias Rows]] { lappend results [list [$dataRow Item TABLE_NAME] \ [$dataRow Item INDEX_NAME] [$dataRow Item PRIMARY_KEY]] } set results } -cleanup { cleanupDb $fileName freeDbConnection unset -nocomplain dataRow dataRows dataTable results connection db fileName } -constraints \ {eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} \ -result {{t1 t1_2 False} {t1 t1_1 False} {t1 sqlite_autoindex_t1_1 True}}} ############################################################################### runSQLiteTestEpilogue runTestEpilogue |
Changes to readme.htm.
︙ | ︙ | |||
189 190 191 192 193 194 195 196 197 198 199 200 201 202 | <p> <b>1.0.87.0 - June XX, 2013 <font color="red">(release scheduled)</font></b> </p> <ul> <li>Add all the necessary infrastructure to allow virtual tables to be implemented in managed code. Fix for [9a544991be].</li> <li>The DbType to type name translation needs to prioritize the Entity Framework type names. Fix for [47f4bac575].</li> <li>Add DateTimeFormatString connection string property to allow the DateTime format string used for all parsing and formatting to be overridden.</li> <li>Disable use of the new connection string parsing algorithm when the No_SQLiteConnectionNewParser environment variable is set. Pursuant to [bbdda6eae2].</li> <li>Rename the ReturnCode property of the SQLiteException class to ResultCode. <b>** Potentially Incompatible Change **</b></li> </ul> <p> <b>1.0.86.0 - May 23, 2013</b> </p> <ul> | > | 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 | <p> <b>1.0.87.0 - June XX, 2013 <font color="red">(release scheduled)</font></b> </p> <ul> <li>Add all the necessary infrastructure to allow virtual tables to be implemented in managed code. Fix for [9a544991be].</li> <li>The DbType to type name translation needs to prioritize the Entity Framework type names. Fix for [47f4bac575].</li> <li>Add DateTimeFormatString connection string property to allow the DateTime format string used for all parsing and formatting to be overridden.</li> <li>Modify the index introspection code so that it does not treat PRAGMA table_info "pk" column values as boolean. Fix for [f2c47a01eb].</li> <li>Disable use of the new connection string parsing algorithm when the No_SQLiteConnectionNewParser environment variable is set. Pursuant to [bbdda6eae2].</li> <li>Rename the ReturnCode property of the SQLiteException class to ResultCode. <b>** Potentially Incompatible Change **</b></li> </ul> <p> <b>1.0.86.0 - May 23, 2013</b> </p> <ul> |
︙ | ︙ |
Changes to www/news.wiki.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <title>News</title> <b>Version History</b> <p> <b>1.0.87.0 - June XX, 2013 <font color="red">(release scheduled)</font></b> </p> <ul> <li>Add all the necessary infrastructure to allow virtual tables to be implemented in managed code. Fix for [9a544991be].</li> <li>The DbType to type name translation needs to prioritize the Entity Framework type names. Fix for [47f4bac575].</li> <li>Add DateTimeFormatString connection string property to allow the DateTime format string used for all parsing and formatting to be overridden.</li> <li>Disable use of the new connection string parsing algorithm when the No_SQLiteConnectionNewParser environment variable is set. Pursuant to [bbdda6eae2].</li> <li>Rename the ReturnCode property of the SQLiteException class to ResultCode. <b>** Potentially Incompatible Change **</b></li> </ul> <p> <b>1.0.86.0 - May 23, 2013</b> </p> <ul> | > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <title>News</title> <b>Version History</b> <p> <b>1.0.87.0 - June XX, 2013 <font color="red">(release scheduled)</font></b> </p> <ul> <li>Add all the necessary infrastructure to allow virtual tables to be implemented in managed code. Fix for [9a544991be].</li> <li>The DbType to type name translation needs to prioritize the Entity Framework type names. Fix for [47f4bac575].</li> <li>Add DateTimeFormatString connection string property to allow the DateTime format string used for all parsing and formatting to be overridden.</li> <li>Modify the index introspection code so that it does not treat PRAGMA table_info 'pk' column values as boolean. Fix for [f2c47a01eb].</li> <li>Disable use of the new connection string parsing algorithm when the No_SQLiteConnectionNewParser environment variable is set. Pursuant to [bbdda6eae2].</li> <li>Rename the ReturnCode property of the SQLiteException class to ResultCode. <b>** Potentially Incompatible Change **</b></li> </ul> <p> <b>1.0.86.0 - May 23, 2013</b> </p> <ul> |
︙ | ︙ |