1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-21 09:00:59 +03:00
Commit Graph

14444 Commits

Author SHA1 Message Date
dan
32b09f29c9 Do not check immediate foreign key constraints until the end of the statement. This matches the postgres behaviour.
FossilOrigin-Name: 1a32149cc3c722058f4ed4c81edadeb6ce5bc9e4
2009-09-23 17:29:59 +00:00
drh
f1dfc4fbb3 Modify the ".dump" command on the CLI so that it always issues a
PRAGMA foreign_keys=OFF at the top of the output.

FossilOrigin-Name: 0755b9b697d32292f378a4b934ca1cf9f56225cd
2009-09-23 15:51:35 +00:00
drh
6d4486ae9f Change the version number to 3.6.19. Fix a couple of incorrect testcase()
macros associated with the new IS and IS NOT operators in expr.c.

FossilOrigin-Name: e3b73394bf9c0391e997079b160eace3589415ab
2009-09-23 14:45:05 +00:00
dan
d981d44781 Disallow using the implicit rowid column as the parent key of an FK constraint.
FossilOrigin-Name: a5f7e71f424900071a3925e53e9128c9148ea2e8
2009-09-23 13:59:17 +00:00
dan
a8f0bf643e Add extra tests for foreign key support.
FossilOrigin-Name: 7d086afe69da4d03bd1de5408626858273f91e8f
2009-09-23 12:06:52 +00:00
dan
8099ce6f4a Add missing comments to fkey.c. Also, change the terminology used for comments and names in fkey.c from "referenced/referencing" to "parent/child". This is arguably less correct, but is easier to follow.
FossilOrigin-Name: 540c2d18e14c277b55f95729fbafc04ca66466b2
2009-09-23 08:43:35 +00:00
drh
788536b165 Do not run ON UPDATE actions of a foreign key constraint unless at least one
column value really does change.

FossilOrigin-Name: 71ac8e28e55ff0250ebe2fe239159ce2458d9165
2009-09-23 03:01:58 +00:00
drh
6a2fe09387 Generalize the IS and IS NOT operators so that their right-hand side can be
an arbitrary expression and not simple the constant NULL.  They work like
= and <> except that NULL values compare equal to one another an unequal to
everything else.

FossilOrigin-Name: 98853f6104076c50ea92175e17a3254bfbbd4619
2009-09-23 02:29:36 +00:00
drh
7ba5bc5bf2 Factor the UMINUS and UPLUS tokens out of the parser so that the parser
tables can go back to using 8-bit values instead of 16-bit values.

FossilOrigin-Name: 3fc938c961fd7810594224b91a2d6e1ac9e48084
2009-09-22 20:08:34 +00:00
drh
9c8abf2b14 The NO ACTION action really should be no-action and not RESTRICT.
FossilOrigin-Name: 55b263fa2b2fed8c721154e3c48f4226be95065c
2009-09-22 19:53:41 +00:00
dan
f59c5cacb8 Fix another OOM related problem in fkey.c.
FossilOrigin-Name: e2bc51bc61d54d103ccffd12106c27a574e4e997
2009-09-22 16:55:38 +00:00
dan
934ce300a0 Fix a problem with ON DELETE SET DEFAULT actions.
FossilOrigin-Name: 9406995055f53639b0af46985c7b0a24a80308ae
2009-09-22 16:08:58 +00:00
dan
29c7f9caac Fix an OOM related crash in fkey.c.
FossilOrigin-Name: 635d6a775a3f192d4292738905f5e01bc956a712
2009-09-22 15:53:47 +00:00
shane
3e82c1d99b Allow specific exclusion of localtime_s() usage on Windows.
FossilOrigin-Name: 216bcda7d2818efda55849d5cb84aa483bc6429b
2009-09-22 13:25:00 +00:00
dan
ba9108b84a Fix compilation errors when OMIT_FOREIGN_KEY is defined.
FossilOrigin-Name: c447cb37d6439090eb08028d54a91d7d06043744
2009-09-22 07:13:42 +00:00
dan
3606264bc9 Fix a problem with foreign key constraints that map from and IPK column.
FossilOrigin-Name: 84129052623dc6a175c76db602ab07fa3e57f1eb
2009-09-21 18:56:23 +00:00
dan
e83c4f3a9e Fix compilation with both OMIT_UTF16 and ENABLE_STAT2 defined. Ticket [56928bd084ea530eb8a0b3ebe5d2d9033fb1de7f|56928bd084].
FossilOrigin-Name: cd850d49a12a2852258cbd7d5db56715132dff17
2009-09-21 16:34:24 +00:00
dan
75cbd984f7 Fix compilation with OMIT_TRIGGER defined. Ticket [1ff6d29030e9757d052af0f394e56bea96b8b59b|1ff6d29030].
FossilOrigin-Name: fb6ceed388f6d75bdc2ac2f43e5c98da74e2a448
2009-09-21 16:06:03 +00:00
dan
1da40a381f Check in implementation of foreign key constraints.
FossilOrigin-Name: d5d399811876391642937edeb9e8434dd9e356f5
2009-09-19 17:00:31 +00:00
drh
3991bb0dee When coding a trigger, assume that the "oldmask" requires all columns until
we know otherwise.  That pessimistic assumption assures that all necessary
parameters are available on a cascading delete trigger.
Ticket [e25d9ea771f]

FossilOrigin-Name: 03e464be51a1c36fc02cf31178ae91f736dfddd6
2009-09-17 00:41:19 +00:00
drh
3492dd71dd Make sure sufficient space is allocated for at least one VDBE cursor when
autoincrement is used.  Ticket [a696379c1f088].

FossilOrigin-Name: 2b2a1ef74e24857b8d18f6370894588fc2aa5ebb
2009-09-14 23:47:24 +00:00
drh
92aa5eacd8 Add an #ifndef so that the build works with SQLITE_OMIT_ANALYZE again.
FossilOrigin-Name: b084828a771ec40be85f07c590ca99de4f6c24ee
2009-09-11 14:05:06 +00:00
drh
d0bc5d2aa6 Omit the mutexIsInit test variable when mutexes are disabled.
FossilOrigin-Name: 3ea10434434d27a1300ba2b58e2c47c54909f4ff
2009-09-10 22:30:53 +00:00
shane
11bb41f878 Fixed some warnings and an assert in the WINCE code when compiling under MSVC.
FossilOrigin-Name: f42ec993ac9d42ca31305f26b09924108c36d9f4
2009-09-10 20:23:30 +00:00
drh
08da4bb16e Make sure the threadsOverrideEachOthersLocks variable is only referenced by
linux systems on a threadsafe compile.

FossilOrigin-Name: e9d064bd9318c2bc9248df948f71fd30f24525eb
2009-09-10 19:20:03 +00:00
shane
abc6b89085 Cleanup of warnings on MSVC build.
FossilOrigin-Name: 5588cc96bbe0b9df5f8d31f8f2d2b48b3f54ff09
2009-09-10 19:09:03 +00:00
drh
fe5bdb36ab Add assert() statement to verify that new mutexes are not allocated when
the mutex subsystem is uninitialized.

FossilOrigin-Name: 1183c533571bc9c7ce56102b718f3e4f4e78019e
2009-09-10 17:45:00 +00:00
dan
f3677212e3 Fix a problem with the sqlite3VdbeMayAbort() assert failing following an OOM.
FossilOrigin-Name: b3027863505fa8edf355f3f5eea4502ef365175e
2009-09-10 16:14:50 +00:00
dan
43bc88bbe8 Remove an ALWAYS macro around an expression that is sometimes false.
FossilOrigin-Name: f2a9ee722c568e73f2a08fb6a2886719850f2923
2009-09-10 10:15:59 +00:00
shane
0cab14167c Reduce default SQLITE_MAX_TRIGGER_DEPTH when SQLITE_SMALL_STACK is defined.
FossilOrigin-Name: 913fb70ea85f05d94db5cf2e692a7c8b7489e3ba
2009-09-10 02:54:48 +00:00
dan
11b3879b18 Trying to open a transaction in one thread and close it in another is a misuse with LinuxThreads. Doing so may cause memory and file-descriptors to be leaked. Update an assert() and some test cases to account for this.
FossilOrigin-Name: ef99eb57c536d82e7c19fd3d990c17793cc64a3f
2009-09-09 18:46:52 +00:00
drh
3f022189dd Suppress some harmless compiler warnings.
FossilOrigin-Name: f0c72a53c5d57d7487b48a06a40816153f47aaac
2009-09-09 16:10:50 +00:00
drh
f4cfac9d63 Bug fix in the SQLITE_OPEN_PRIVATECACHE option added a few minutes ago.
FossilOrigin-Name: f3a0f23bc77f8c73924f1d371afae9a0f65bae67
2009-09-09 15:29:41 +00:00
dan
ae0931edae Add some tests that involve BEFORE UPDATE or BEFORE DELETE triggers messing with the row being updated or deleted. SQLite behaviour in this scenario is undefined, so the tests just check that the behaviour is relatively sane and there are no crashes.
FossilOrigin-Name: 9a4c59a2ddd0df2d9425097004b450a6685f2147
2009-09-09 15:06:10 +00:00
drh
f1f12688d8 Added SQLITE_OPEN_SHAREDCACHE and SQLITE_OPEN_PRIVATECACHE flags as
possibilities to sqlite3_open_v2(), to override the global shared
cache mode setting.  Ticket [9fd0bc36639c15]

FossilOrigin-Name: f509eb8b488bb39deda4ca88f66ed40c6784af02
2009-09-09 14:17:52 +00:00
drh
643a392270 Increase the size of bitvec objects to 1024 bytes on 64-bit systems.
FossilOrigin-Name: f1272b90f6078d301ab05592593e9415f2b2b90b
2009-09-09 12:41:17 +00:00
dan
144926d8b6 Add a complicated assert() to check that statement transactions are opened when required.
FossilOrigin-Name: 28aa1f4ea8dad56ffedb31d6c2bc27c1d6be2407
2009-09-09 11:37:20 +00:00
dan
e0af83aca6 Combine the OP_Statement and OP_Transaction opcodes.
FossilOrigin-Name: aec9dbd8d21c55c3945287a3dfa55d3ed168f977
2009-09-08 19:15:01 +00:00
dan
2283d46cd6 If recursive-triggers are enabled, fire DELETE triggers if database rows are removed as a result of OR REPLACE conflict resolution.
FossilOrigin-Name: 85cb0c94a63eda5f059ebe40887c7af9b4869893
2009-09-08 15:55:15 +00:00
drh
345ba7db59 Additional simplifications in support of structural testing.
FossilOrigin-Name: 4ab8c841f818326b0b04b95e3edd828c77f109d9
2009-09-08 13:40:16 +00:00
drh
b7f1d9a747 Further simplifications to the VDBE - removing functionality that is no longer
used.

FossilOrigin-Name: b271e16621831957468a1d3925174aac73f58891
2009-09-08 02:27:58 +00:00
drh
3e9ca09453 Code simplifications, especially to the pseudo-table logic, and comment
improvements.

FossilOrigin-Name: 52449a9569b7142095cc88ee208b31cc59a3cab4
2009-09-08 01:14:48 +00:00
drh
417168ade2 Add the SQLITE_LIMIT_TRIGGER_DEPTH option to sqlite3_limit().
FossilOrigin-Name: d7dc8b433691745b3842282569f1573d1e057963
2009-09-07 18:14:02 +00:00
dan
2f8e4959d1 Merge [/src/vinfo/1958db4493461b3a54217a6a45f2730287107860|1958db4493] and [/src/vinfo/26cd015c0ee1c18dd37f11b47ce35cfa320b3514|26cd015c0e].
FossilOrigin-Name: ecbe0832be77599c7cc66fb9968d0f419000d231
2009-09-07 17:41:48 +00:00
dan
0c6621ac66 Fix a bug where a condition was incorrectly being compiled out when SQLITE_OMIT_VIRTUALTABLE was defined.
FossilOrigin-Name: 1958db4493461b3a54217a6a45f2730287107860
2009-09-07 17:32:34 +00:00
shane
cea72b2dc2 Warning cleanup from the MSVC compile.
FossilOrigin-Name: 26cd015c0ee1c18dd37f11b47ce35cfa320b3514
2009-09-07 04:38:36 +00:00
shane
e025d1d7e5 Attempt to handle numbers at the limits of the IEEE 754 range better (nan.test now passes).
FossilOrigin-Name: 2a74ae1969aeec93576a44e11177677e6f3cea9c
2009-09-07 03:48:52 +00:00
shane
dcabfcee27 Changes to internal AtoF to improve "accuracy" when measured against built-in GCC atof().
FossilOrigin-Name: 438e1577d0f9ceb2851ee0df0df18f0229eca491
2009-09-07 02:46:31 +00:00
drh
0c2694b744 Add the "unix-wfl" VFS that does whole-file locking in order to help NFS
do better cache coherency.

FossilOrigin-Name: 2aeab80e5b84f5e94c5c99b4adeca805601c844b
2009-09-03 16:23:44 +00:00
drh
d7d385dde0 Do not reuse function parameters in subsequent expressions since the
function call might have triggered a text encoding change.
Fix for ticket [2ea2425d34be].

FossilOrigin-Name: f22e388727f0ba0f187cdee51ff8ba17a5d50b8a
2009-09-03 01:18:00 +00:00