1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-10-27 08:52:26 +03:00
Commit Graph

170 Commits

Author SHA1 Message Date
drh
1962bda764 The initial round of tests for the sqlite_set_authorizer() API. More are
needed before release.  Ticket #215. (CVS 829)

FossilOrigin-Name: 5707b3d56efb6e988f816abefb1836f2f3254117
2003-01-12 19:33:52 +00:00
drh
ed6c8671b3 Initial check-in of the code for the new sqlite_set_authorizer() API function.
The code is mostly untested at this point. (CVS 827)

FossilOrigin-Name: 52d5007f64d0af5286b2a0e1f0b9e53c86bece3f
2003-01-12 18:02:16 +00:00
drh
836faa4843 Remove the ColumnCount opcode, which had become a no-op. (CVS 821)
FossilOrigin-Name: 86deb12d68026913d181f9498144fa56445899f2
2003-01-11 13:30:57 +00:00
drh
cabb081971 Do not put a write lock on the main database file when writing to a temporary
table. (CVS 750)

FossilOrigin-Name: 3f253afe15d4f7392555f340a41d780d1248087f
2002-09-14 13:47:32 +00:00
drh
142e30df99 Slightly faster INSERTs from a SELECT by avoiding an intermediate table.
But it didn't make nearly as much difference as I had hoped. (CVS 732)

FossilOrigin-Name: 723362e74f79c784314d042e3a8c8a9bf07cbd5e
2002-08-28 03:00:58 +00:00
drh
f573c99ba7 Fix for ticket #104: Make triggers on views work properly even after closing
and reopening the database.  Also fixed an unrelated bug in the version
2.6.0 database format upgrade logic.  The upgrade logic bug was found while
testing the trigger fixes. (CVS 697)

FossilOrigin-Name: 04973fc2a6a0c93877de7e564618e0e9fcffc06c
2002-07-31 00:32:50 +00:00
drh
491791a827 Fix for ticket #107: Fix a design defect in indices that was causing queries
to fail when using an index on a column containing an empty string.  This
fix is an incompatible file-format change. (CVS 681)

FossilOrigin-Name: 20d152fcddb4fa53556a9c93c7a869600a7c5183
2002-07-18 00:34:09 +00:00
drh
38640e15af All the code is now in place for SQLite to distinguish between NUMERIC and
TEXT datatypes.  Still need to turn on the new code and test it. (CVS 659)

FossilOrigin-Name: b4737a16c997a6c139d616211fb6bc4b0fae181c
2002-07-05 21:42:36 +00:00
drh
27a32783ab Fix for ticket #75: Autoincrement INTEGER PRIMARY KEY fields on an INSERT
even if the data is coming from a SELECT statement. (CVS 630)

FossilOrigin-Name: d599f75b659809a6e5eee09b0e9e6e90bde5af1e
2002-06-19 20:32:43 +00:00
danielk1977
6f34903e85 Add RAISE() function, which allows more advanced flow-control in trigger programs (ticket #55) (CVS 614)
FossilOrigin-Name: d4a2fb10067203a0d49317db747759872e62927e
2002-06-11 02:25:40 +00:00
drh
0bd1f4ea5a Added the %fallback directive to the lemon parser generator and used this
in the parser to make the parse tables much smaller.  This reduced the size
of the library by 15K. (CVS 605)

FossilOrigin-Name: 7ac5bd293cbb2bf252f31f1571f7efac7e77280a
2002-06-06 18:54:39 +00:00
drh
f5905aa7be NULL values are distinct. A comparison involving a NULL is always false.
Operations on a NULL value yield a NULL result.  This change makes SQLite
operate more like the SQL spec, but it may break existing applications that
assumed the old behavior.  All the old tests pass but we still need to add
new tests to better verify the new behavior.  Fix for ticket #44. (CVS 589)

FossilOrigin-Name: 9051173742f1b0e15a809d12a0c9c98fd2c4614d
2002-05-26 20:54:33 +00:00
drh
ad3cab52fe Split the IdList structure into IdList and SrcList. SrcList is used to
represent a FROM clause and IdList is used for everything else.  This change
allows SrcList to grow to support outer joins without burdening the other
uses of IdList. (CVS 584)

FossilOrigin-Name: a167b71d8c27e870bc3079c6132e483bffc83298
2002-05-24 02:04:32 +00:00
drh
79b0c95687 Fix for ticket #45: Allow an UPDATE statement to change the INTEGER PRIMARY KEY
to itself without triggering a constraint error. (CVS 573)

FossilOrigin-Name: 592da1346872e1373bd13525d05d0f33c1056709
2002-05-21 12:56:43 +00:00
drh
c977f7f596 Additional code cleanup resulting from a review of the new trigger code. (CVS 572)
FossilOrigin-Name: 37dbdd551e88440933066133ec9cc1e10b03fc1a
2002-05-21 11:38:11 +00:00
danielk1977
f29ce55958 Style fixes to triggers code in various *.c files (partial fix to ticket #39) (CVS 571)
FossilOrigin-Name: 8a4195c7466962291a296e8f53034ea8cb25005f
2002-05-19 23:43:12 +00:00
drh
9adf9ac4e4 Remove all tabs from the beginning of source code lines. Replace tabs with
the appropriate number of spaces. (CVS 565)

FossilOrigin-Name: 690f9a163173c4c7af7e8e92e942cee4184c7974
2002-05-15 11:44:13 +00:00
danielk1977
c3f9bad209 Added FOR EACH ROW triggers functionality (CVS 562)
FossilOrigin-Name: 794bf67b6b36fce8854d5daff12f21dbb943240c
2002-05-15 08:30:12 +00:00
drh
c8d30ac109 Fix for bug #15: Add the sqlite_changes() API function for retrieving the
number of rows that changed in the previous operation. (CVS 526)

FossilOrigin-Name: 6e71493b9dc77d508c3ce90562766789e87e6d80
2002-04-12 10:08:59 +00:00
drh
b04a5d8768 Fix for bug #16: Check for invalid functions in the VALUES clause of an
INSERT statement. (CVS 525)

FossilOrigin-Name: 43a77f019d34e1a6b3f502ad0ec31a00c8fdbe6e
2002-04-12 03:55:15 +00:00
drh
feeb1394ee Fix for bug #11: Output the correct row count when and INSERT does an
IGNORE action. (CVS 524)

FossilOrigin-Name: bb83642e9a6c1c9ade861618496933c9f922a8f8
2002-04-09 03:28:01 +00:00
drh
fe1a1773a8 Fix for bug #10: Pop the stack by the right amount on an IGNORE so that the
stack does not grow without bound. (CVS 523)

FossilOrigin-Name: f46acfc3b828620e4e97b09f9aff119b9313e5d7
2002-04-09 03:15:06 +00:00
drh
e1e68f4974 When an attempt is made to insert an explicit NULL into an INTEGER
PRIMARY KEY column, automatically convert the NULL value into a unique
integer key.  This was already happening when an implied NULL was
inserted - when the INTEGER PRIMARY KEY column was omitted from the
list of columns being inserted.  Patches from Christian Werner. (CVS 510)

FossilOrigin-Name: 9e3cf4aa2cb44932015b8bd3fd800d7678cb09b6
2002-03-31 18:29:03 +00:00
drh
417be79cd1 VIEWs are bound to tables when they are used, not when they are first
entered.  This works around the problem of what to do if a table is deleted
that a view refers to. (CVS 415)

FossilOrigin-Name: 6121e5ab9328c90c64d40ade3de73ad11d4aaf4e
2002-03-03 18:59:40 +00:00
drh
832508b7ea Subquery flattening is implemented and passes all regression tests.
We still need to add addition tests to the suite to further exercise
the flattener, however. (CVS 408)

FossilOrigin-Name: d5d3e79cc58da5bd315cc1fea1f7cbf46274da16
2002-03-02 17:04:07 +00:00
drh
a76b5dfca6 Code to implement CREATE VIEW is in place. A quick smoke test shows that
it works, but there are probably still many bugs. (CVS 387)

FossilOrigin-Name: 39fed2df11382b9855d518502a6c2ca200fa66b8
2002-02-23 02:32:10 +00:00
drh
aaab5725db Change the name of the sanity_check PRAGMA to "integrity_check" and make
it available on all compiles. (CVS 381)

FossilOrigin-Name: c6e9048e66c8d8e2d5f6c62aa724eef3e9d9f572
2002-02-19 13:39:21 +00:00
drh
e64e7b203e Allow general expressions in the VALUES clause of an INSERT statement. (CVS 376)
FossilOrigin-Name: ec1f3fae6f8cd8466892cd370e1802e492a76e6e
2002-02-18 13:56:36 +00:00
drh
24e97df9c7 Fix a serious bug in INSERT when the source is a SELECT. (CVS 366)
FossilOrigin-Name: 20ea737536700b016385c70105a2af8b2bffce2b
2002-02-03 19:06:02 +00:00
drh
0d65dc0e90 Five-algorithm conflict resolution appears to be working. (CVS 363)
FossilOrigin-Name: 0115518f8e4591123582e3d2bb67282111ebcf60
2002-02-03 00:56:09 +00:00
drh
663fc63a77 Get the ABORT conflict resolution algorithm working. (CVS 362)
FossilOrigin-Name: 9be4d4c6f12056782966396dca0b8e2d384d0cf2
2002-02-02 18:49:19 +00:00
drh
1c92853dac Change to five conflict resolution algorithms: ROLLBACK, ABORT, FAIL,
IGNORE, and REPLACE.  This checkin is code only.  Documentation and
tests are still needed.  Also, ABORT is not fully implemented. (CVS 360)

FossilOrigin-Name: d0e7cf4a83e6abad7129bed356b7492dddaff474
2002-01-31 15:54:21 +00:00
drh
b419a926d4 Added ON CONFLICT support to COPY. Updates to documentation. Bug fixes. (CVS 359)
FossilOrigin-Name: cf1538d71c9ce12d5e59f367e03642cbcaf6b717
2002-01-30 16:17:23 +00:00
drh
ef6764a1d9 Better testing of the ON CONFLICT logic. (CVS 358)
FossilOrigin-Name: 9bbddb8e013b47547164f71f2d7abd995f8d7385
2002-01-30 04:32:00 +00:00
drh
bb37fdc782 More bug fixes in the ON CONFLICT enhancement. (CVS 357)
FossilOrigin-Name: 8229b5f6a348a56432a4a609ee125520c5831973
2002-01-30 00:54:55 +00:00
drh
0ca3e24b2e The new ON CONFLICT logic is in and passes the legacy tests. But the
new capabilities have not been tested and are likely broken. (CVS 356)

FossilOrigin-Name: ac8a4189e2a0c41161ee359db25de94435420368
2002-01-29 23:07:02 +00:00
drh
9cfcf5d4f6 Beginning to insert the infrastructure for ON CONFLICT clauses. (CVS 355)
FossilOrigin-Name: e00a9ff8f99dd58f7cb19a6195fac21f4c8b4af9
2002-01-29 18:41:24 +00:00
drh
6b12545f4f Bug fix: The IN operator was not working if either side derived from
an INTEGER PRIMARY KEY. (CVS 354)

FossilOrigin-Name: dbcfe198fbaa155874ef82a96b6a4b993ccf3931
2002-01-28 15:53:03 +00:00
drh
aacc543e23 Comment updates most. Also some small changes to the VDBE. (CVS 339)
FossilOrigin-Name: 9b0be4fcc1cbca69f5fee906f86dfb36a323fe84
2002-01-06 17:07:40 +00:00
drh
c6b52df32d An attempt to delete a single row using a WHERE clause that specifies
the rowid would result in an error if the rowid did not exist.  This
problem has been resolved. (CVS 338)

FossilOrigin-Name: 011be9a9d2632d261489005d97c69b0a0bc5a108
2002-01-04 03:09:29 +00:00
drh
c839258651 Comment changes. Change the use of BTree so that either the key is
an integer or the data is empty. (CVS 337)

FossilOrigin-Name: 18e606f7486eb3a4ab128504d88a44f53d39e5b2
2001-12-31 02:48:51 +00:00
drh
9aa028daa2 Bug fix in the out-of-order INSERT. (CVS 336)
FossilOrigin-Name: a26d0880b20ca5534400a3689d1da31fe6aaa934
2001-12-22 21:48:29 +00:00
drh
8aff10153e Bug fixing in the new integer primary key code. (CVS 334)
FossilOrigin-Name: 29cab124b4f7eae9d9feb60d2f3a2c443fd9b9aa
2001-12-22 14:49:24 +00:00
drh
4a32431ce7 Added support for the INTEGER PRIMARY KEY column type. (CVS 333)
FossilOrigin-Name: 236a54d289e858a1e0505a20d907a2a40c01b521
2001-12-21 14:30:42 +00:00
drh
6b56344d4a New Next opcode and indexing style implemented. (CVS 304)
FossilOrigin-Name: decbeb9151885fee473b3fa58c8cf78a2338d2d8
2001-11-07 16:48:26 +00:00
drh
8721ce4ae7 Incremental update. We are in the middle of modifying the index system
to support range queries without doing a complete table scan. (CVS 303)

FossilOrigin-Name: e6ca23fa4569bc33065bf57ce7ce6132cd6a9de0
2001-11-07 14:22:00 +00:00
drh
1bee3d7b43 Added support for the COUNT_CHANGES pragma in order to help out the
ODBC driver.  Fixed a but on count(*) when applied to empty tables. (CVS 289)

FossilOrigin-Name: 747bf1b30b74cfd0e9c27e7c0bc5172637f35520
2001-10-15 00:44:35 +00:00
drh
99fcd718e1 Remove the P3 and label arguments from the internal sqliteVdbeAddOp()
function.  This makes the code easier to read and perhaps smaller as
well. (CVS 286)

FossilOrigin-Name: 288ef1247b94c6c933451d120cdc78e471efc14e
2001-10-13 01:06:47 +00:00
drh
f57b339988 Support for temporary tables added. Still need more testing. (CVS 279)
FossilOrigin-Name: 9368c62e4097aae3081a325962c1dec167fd253d
2001-10-08 13:22:32 +00:00
drh
382c0247c7 Adding table column query capability to support ODBC. (CVS 278)
FossilOrigin-Name: b63b3f3684a3d584ef99f54cde76b6c483bbfef7
2001-10-06 16:33:02 +00:00