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
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
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
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
94d7f50a0f
Remove unused parameter from sqlite3CodeRowTrigger(). Fix header comments for this function and CodeRowTriggerDirect().
...
FossilOrigin-Name: 0443f7c9112ca91aa45c78a3d6287e5fcf5c3b73
2009-09-24 09:05:49 +00:00
drh
ff738bce0d
Make sure a transaction is available for rollback whenever a REDUCE conflict
...
resolution occurs and there is the possibility to ABORT.
Ticket [4a03edc4c8c]
FossilOrigin-Name: f0c56fa90dc95aff6fe6764b5ab75a90199247b0
2009-09-24 00:09:58 +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
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
dan
ba9108b84a
Fix compilation errors when OMIT_FOREIGN_KEY is defined.
...
FossilOrigin-Name: c447cb37d6439090eb08028d54a91d7d06043744
2009-09-22 07:13:42 +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
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
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
shane
cea72b2dc2
Warning cleanup from the MSVC compile.
...
FossilOrigin-Name: 26cd015c0ee1c18dd37f11b47ce35cfa320b3514
2009-09-07 04:38:36 +00:00
dan
5bde73c4eb
Change "PRAGMA disable_recursive_triggers" to "PRAGMA recursive_triggers". Also a fix for compiling with OMIT_TRIGGER defined.
...
FossilOrigin-Name: e016cca36390451d5d1c6e0d1b3cdbd6d869be1a
2009-09-01 17:11:07 +00:00
dan
65a7cd1631
More fixes and comment updates.
...
FossilOrigin-Name: 38a9327bad1a01e3d7a47fad44ece2f6c7e88643
2009-09-01 12:16:01 +00:00
dan
2832ad4221
More fixes for test cases.
...
FossilOrigin-Name: 85d9f23be1e8673dbda42e43b9b23332ada9225f
2009-08-31 15:27:27 +00:00
dan
76d462ee78
Fixes for new triggers scheme.
...
FossilOrigin-Name: 9eb91efda5241609ff18ff15ef5eaa0e86788eab
2009-08-30 11:42:51 +00:00
dan
165921a742
Changes to support recursive triggers.
...
FossilOrigin-Name: 9b9c19211593d5ff7b39254a29c284560a8bcedb
2009-08-28 18:53:45 +00:00
drh
cdaca55eb1
Incremental code and comment cleanup in where.c. There is more to be done.
...
FossilOrigin-Name: 4a5d9550bdc08633535a7869d7748f56ac3e9a36
2009-08-20 13:45:07 +00:00
drh
9aeda79cf6
All the sqlite3GetCollSeq() function to specify an arbitrary text encoding.
...
FossilOrigin-Name: 4ee44322ca3c92ed8d6f5d4a3f89d219bf379595
2009-08-20 02:34:15 +00:00
dan
fcd4a150e2
Change the way an Expr that has been converted to TK_REGISTER stores its original opcode. The previous method, overloading Expr.iColumn, did not work in all cases.
...
FossilOrigin-Name: 71ea9d0e148fbd3d633651c61c81044e37cf88b9
2009-08-19 17:17:00 +00:00
dan
9267f85790
Merge with 709e16145e.
...
FossilOrigin-Name: 6c8a0e2b37d9f4399ef90a44cbc492526201d0d5
2009-08-19 14:42:25 +00:00
dan
85c165caca
Clean up sqlite_stat2 related code. Add test cases.
...
FossilOrigin-Name: aa728e06ce456fa42e68687bff6c7424460c31ef
2009-08-19 14:34:54 +00:00
dan
a898aac951
Fix a problem where a buffer allocated from a lookaside pool was being released using the system free().
...
FossilOrigin-Name: 67207a15bd7302ffeb2f342532b57b4852838d83
2009-08-19 09:09:38 +00:00
dan
69188d9a66
Add the SQLITE_ENABLE_STAT2 macro. If this is not defined at build-time, the stat2 table is not created, populated, or used.
...
FossilOrigin-Name: 362665e89c21fd603d9f8ad6c0ead590e885af7c
2009-08-19 08:18:32 +00:00
dan
e275dc3fb8
Change the sqlite_stat2 schema to be more flexible.
...
FossilOrigin-Name: ded9dec6459baf21e01f63250db5ace57f390e7a
2009-08-18 16:24:58 +00:00
dan
02fa469619
First version of sqlite_stat2 (schema forces exactly 10 samples).
...
FossilOrigin-Name: dd96bda2a85c1d94fb4a0bf5f27e2977f7f7e42e
2009-08-17 17:06:58 +00:00
dan
e1ab219309
Add tests to check that sqlite recovers from an error in sqlite3_initialize() correctly.
...
FossilOrigin-Name: 904a371c6c9d3f20332b37767b06161fa0a78113
2009-08-17 15:16:19 +00:00
dan
69f8bb9c72
If a binary operator in a WHERE clause that should be performed with no affinity conversions applied to its operands (see http://www.sqlite.org/datatype3.html ) is optimized by index lookup, do not apply any conversions to the key value before looking it up in the index. Fix for 93fb9f89d6.
...
FossilOrigin-Name: e72186f2d68d28c2e0c32894f9adb28c155b5f63
2009-08-13 19:21:16 +00:00
drh
2210dcc60d
Make sure the large-file support macros occur first in sqliteInt.h.
...
Fix for CVSTrac ticket #4022 .
FossilOrigin-Name: b0848925babde5241aefe0a117ebb10299c94a15
2009-08-12 11:45:40 +00:00
shane
5eff7cf0c9
Removed some warnings from the MSVC compile. (CVS 6965)
...
FossilOrigin-Name: ee034cfc71425745dda8d5fee58ae95f937c86cd
2009-08-10 03:57:58 +00:00
drh
3d5f74b275
Alternative fix for ticket #3810 . This is a replacement for check-in (6956). (CVS 6960)
...
FossilOrigin-Name: ba1afc040171810d0c996708d7b9cb11abcd99d8
2009-08-06 17:43:31 +00:00
danielk1977
ee0484c1b5
Add the experimental API sqlite3_strnicmp(). Modify fts3 so that in terms like 'column_name:token' the column_name is interpreted in a case-insenstive fashion. Ticket #3996 . (CVS 6950)
...
FossilOrigin-Name: 4571aa9e9142db465ae8250b0adf27e0a094331a
2009-07-28 16:44:26 +00:00
danielk1977
c7538b5f63
When extracting values from a record to use in an UPDATEd version of that record, apply OP_RealAffinity if required. Fix for #3992 . (CVS 6945)
...
FossilOrigin-Name: 3616766a6f5c8179cc55444c29ecf29cc69f88ce
2009-07-27 10:05:04 +00:00
danielk1977
595a523a10
Allow virtual tables to be used in shared-cache mode. (CVS 6928)
...
FossilOrigin-Name: 5d9e767a05e381235e064061043e30cc03a11a07
2009-07-24 17:58:53 +00:00
drh
3c18eb6048
Remove the SQLITE_CommitBusy flag. This was an attempt to block recursion
...
on the sqlite3_commit_hook() interface. But such recursion is explicitly
disallowed, so the flag is pointless. (CVS 6889)
FossilOrigin-Name: 1c2bfc43a4fd5b779a3b5b5b8ca5b41cb7250b5a
2009-07-13 15:52:38 +00:00
drh
e7f3f3eec1
Remove two unused fields from the Parse structure. The TCL interface now
...
removes leading whitespace from SQL statements before parsing them. (CVS 6846)
FossilOrigin-Name: 983cb6924b8a7d3057718b9228c0cb2fbe7f0dc4
2009-07-03 22:54:36 +00:00
drh
b1819a0b95
Make explicit the restrictions on UPDATE, DELETE, and INSERT statement syntax
...
within triggers. Ticket #3947 . (CVS 6840)
FossilOrigin-Name: c8bf40df7be728b11bb633516d1988c6064a9d70
2009-07-03 15:37:27 +00:00
drh
9ed7a9953e
Remove the priorNewRowid field from the sqlite3 structure. Use the
...
last_insert_rowid as the initial value when searching for a new random
rowid in the OP_NewRowid opcode. (CVS 6824)
FossilOrigin-Name: 96729b2d499f029bfaec6648a592e8ec697d9521
2009-06-26 15:14:55 +00:00
drh
bfff79f125
Remove a declaration of the sqlite3Assert() function that was deleted by the
...
previous check-in. (CVS 6810)
FossilOrigin-Name: ee20b6a23fa4a4ec4d3a2d0dcfcabff466f08246
2009-06-24 11:08:13 +00:00
drh
2de80f4c50
Remove the sqlite3Assert() function. The ALWAYS() and NEVER() macros call
...
assert() directly when compiled with SQLITE_DEBUG. (CVS 6809)
FossilOrigin-Name: d8fc373fef22311e1c6b5bce6d3e601217a69940
2009-06-24 10:26:32 +00:00
drh
0b9f50d8aa
Enhance autoincrement so that it works with triggers that also do
...
autoincrement inserts, even multiple inserts into the same table.
Ticket #3928 (CVS 6807)
FossilOrigin-Name: 1330993de8eae7baeec24100216158063c9bdc19
2009-06-23 20:28:53 +00:00
drh
8bfdf72136
Reorganize and cleanup the prepared statement object. Remove code that has
...
been commented out for ages and is no longer relevant to anything. (CVS 6786)
FossilOrigin-Name: 37ae5f5e8feb34a8e6e8b34aa18df1e9a1ce55cb
2009-06-19 14:06:03 +00:00
drh
fa9601a9a6
Move codec management from database connections into the pager so that it
...
will work together with shared cache. (CVS 6782)
FossilOrigin-Name: ed08b53cd64c4ff2c94ef4e48441c5236041c9ca
2009-06-18 17:22:39 +00:00
drh
0b3bf92417
Changes to allow a clean compile with no floating-point instructions
...
generated when SQLITE_OMIT_FLOATING_POINT is used. (CVS 6763)
FossilOrigin-Name: 1591b8322babebc45df3b799cc5e457288f28594
2009-06-15 20:45:34 +00:00
drh
85d2bd22f1
Changes to reenable codec operation and to handle memory allocation
...
failures within a codec. (CVS 6746)
FossilOrigin-Name: 43a6ca98b1a6aff1f0f674ecabdc929efb314db7
2009-06-11 00:47:20 +00:00