drh
8cff69df11
Enhance the OP_Found and OP_NotFound opcodes so that they can accept an
...
array of registers as an unpacked record in addition to a record built
using OP_MakeRecord. Use this to avoid OP_MakeRecord calls during IN
expression processing.
FossilOrigin-Name: b9eab885cd2ca1a1633329e7036c125e8dba62c5
2009-11-12 19:59:44 +00:00
drh
d3ceeb50f3
Suppress some harmless compiler warnings.
...
FossilOrigin-Name: 5d381daa6e5248ec171aa682e2dad058d4012f24
2009-10-13 13:08:19 +00:00
drh
4c4298392e
Add asserts as evidence that all FK constraints are either immediate or
...
deferred.
FossilOrigin-Name: 634ef4fc9f4051245b38f558bb1c733031548c2f
2009-10-12 22:30:49 +00:00
drh
9a616f5607
When processing FK constraints on changes to parent tables, make sure the
...
names of child tables appear correctly in the output of EXPLAIN QUERY PLAN.
FossilOrigin-Name: a4ab5215fed231c8e5f8714f5cadafd1209b362a
2009-10-12 20:01:49 +00:00
dan
ed81bf6082
Add a missing OP_Close opcode to VDBE programs that check for FK constraint violations.
...
FossilOrigin-Name: 5caa4a2b050d5743b1407485cf419aa36cf16ac6
2009-10-07 16:04:46 +00:00
dan
02470b20f3
Handle an SQLITE_IGNORE returned when requesting authorization to read parent key columns by pretending the parent key columns contain NULL values.
...
FossilOrigin-Name: 3c24df38e6ae5dfe999bbf3133b65df0074c6a50
2009-10-03 07:04:11 +00:00
dan
47a06346ff
When inserting a row into a child table, invoke the authorization callback to request permission to read the parent key columns.
...
FossilOrigin-Name: 9842f2d5f606eb8f641ecae9fbc5368b8d7e4286
2009-10-02 14:23:41 +00:00
dan
e7a94d8128
If an update does not modify any child or parent key columns, omit foreign key processing for the statement.
...
FossilOrigin-Name: edff3500058eb8ad2381f855ef7a09ecb680f7b8
2009-10-01 16:09:04 +00:00
dan
f7a94543b8
Remove unreachable branches from fkey.c. Add a few tests to cover the remaining branches.
...
FossilOrigin-Name: 0a0a17d87c990a811a2755b9d9d4141b611b49db
2009-09-30 08:11:07 +00:00
dan
652ac1d0a7
Use the affinity and collation sequence associated with the parent key when finding child table rows to apply a foreign key action to.
...
FossilOrigin-Name: 9a4b7ec2928307e88783223903c842accaff7ccf
2009-09-29 16:38:59 +00:00
dan
9707c7b104
Check that a unique index uses the default collation sequences for each column before using it as part of a foreign key constraint operation.
...
FossilOrigin-Name: 64154174cf8a53bd9be818db53cb0e586c5d24cb
2009-09-29 15:41:57 +00:00
dan
792e92012f
Remove an unused variable from fkey.c.
...
FossilOrigin-Name: 582bd7682831362cd0e2f91ac0dba5ab2b7e2983
2009-09-29 11:28:51 +00:00
dan
f0662567fa
Ignore foreign key mismatch errors while compiling DROP TABLE commands.
...
FossilOrigin-Name: 5b4d46374a8e808246a1813c12c36c4a75371898
2009-09-28 18:52:11 +00:00
dan
d66c83095e
Fix the DROP TABLE command so that it cannot be used to bypass foreign key constraints (if foreign key support is enabled).
...
FossilOrigin-Name: 8353808c9e70412fdee31bfda7810e948f1c7485
2009-09-28 14:49:01 +00:00
dan
9277efa3d5
Fix some foreign key constraint related problems that occur when a row refers to itself.
...
FossilOrigin-Name: 9e503e2d0428c9e8df878c7c6594790232cca4e0
2009-09-28 11:54:21 +00:00
dan
432cc5b9f3
When ALTER TABLE RENAME TO is used to change the name of a table that is the parent table of a foreign key constraint, modify that foreign key constraint to use the new table name.
...
FossilOrigin-Name: b4a10c39e726dc190e9597e382baddc034294114
2009-09-26 17:51:48 +00:00
dan
0ff297eaa7
Avoid checking if an insert or delete has "fixed" an outstanding FK constraint violation if the constraint counter indicates that the database contains no such violations.
...
FossilOrigin-Name: 519144ac437b5842e4213f0e81e05c709939c2ab
2009-09-25 17:03:14 +00:00
dan
bd74783270
Fix comments in fkey2.c to reflect the immediate-constraint-counter approach.
...
FossilOrigin-Name: 9fd54b0aa73ed74c65f7db53cb666752f13263f9
2009-09-25 12:00:01 +00:00
dan
140026bdb5
Fixes and test cases to make sure the affinity and collation sequence associated with the parent key is used when comparing it with a child key value.
...
FossilOrigin-Name: 76e8e74b49be4c80b9fb20d52e9b39db8001362e
2009-09-24 18:19:41 +00:00
dan
8c430041f5
Fix a problem in fkey.c when a child key is the IPK of its table.
...
FossilOrigin-Name: 8a000a8aae4d356e68acf2bc1788d2c40279522c
2009-09-24 15:16:33 +00:00
drh
46803c3e0b
Remove the ALWAYS() added by the previous check-in. It is not needed.
...
FossilOrigin-Name: 36568963356e3919e8b862e7e40ded2eae7ce187
2009-09-24 14:27:33 +00:00
drh
1f638ceb34
Comment enhancements. Add an ALWAYS macro in fkey.c to indicate a branch
...
that is always taken.
FossilOrigin-Name: d5b714cffffe588dd4dd10e0b82df8d99657be88
2009-09-24 13:48:10 +00:00
dan
8a2fff7a78
Fix a problem with FK constraints that implicitly map to a composite primary key.
...
FossilOrigin-Name: e0a48d53110130de75602603f524539e421a9dba
2009-09-23 18:07:22 +00:00
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
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
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
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
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