drh
6a51741d46
Suppress excess OP_Null opcodes caused by binary IS or IS NOT operators
...
that are converted into unary ISNULL or NOTNULL operators.
FossilOrigin-Name: cff1b36ab2c417611f59e96694005c03762788d2
2009-11-12 03:46:34 +00:00
drh
c81c11f62c
Remove the obsolete "$Id:$" RCS identifier strings from the source code.
...
FossilOrigin-Name: f6c045f649036958078cb15cd9d5453680c82b0c
2009-11-10 01:30:52 +00:00
drh
fcf486c3b4
Add evidence marks to parse.y. Fix a broken evidence link in e_fkey.tcl.
...
FossilOrigin-Name: 0441d28e84af20e3a98a07a43471784ac09c78db
2009-10-21 13:48:24 +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
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
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
shane
5eff7cf0c9
Removed some warnings from the MSVC compile. (CVS 6965)
...
FossilOrigin-Name: ee034cfc71425745dda8d5fee58ae95f937c86cd
2009-08-10 03:57:58 +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
danielk1977
9b87d7b904
Do not ignore alias "a" in a query of the form "SELECT ... FROM (...) AS a" Fix for #3935 . Also expand upon (6751) to fix some similar obscure memory leaks. (CVS 6831)
...
FossilOrigin-Name: 42f9d1e56483a59353bff57d75f09ed67e1d9c3c
2009-07-01 14:56:39 +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
8a415d3743
The lemon parser generator now inserts yytestcase() macros on reduce action
...
and on each destructor, to verify that all have been executed. yytestcase()
is a no-op by default but can be set to something more useful inside
of %include. (CVS 6755)
FossilOrigin-Name: fe9c9177340a3dc372ffa1b851030d005e0c46db
2009-06-12 13:53:51 +00:00
drh
994704d1cb
Enable the SQLITE_LIMIT_FUNCTION_ARG limiter. (CVS 6753)
...
FossilOrigin-Name: a17e3317176772446abdc8ebe6fb6f0d3b7ac018
2009-06-12 12:04:16 +00:00
drh
13d32d196e
An additional memory leak in the parser fixed. Ticket #3911 . (CVS 6751)
...
FossilOrigin-Name: 6197b492714e16396941ae6ba61f90f708d54728
2009-06-12 03:47:36 +00:00
drh
d3ec02d38e
Modifications to the parser to eliminate unreachable code. (CVS 6749)
...
FossilOrigin-Name: 457e0b245b1833c0d297bc6f4ff9785e6a2cee02
2009-06-12 02:27:14 +00:00
drh
33e619fc1c
Additional refinements to Expr handling. Restore compression of trigger
...
expressions. Change Expr.zToken to Expr.u.zToken and added Expr.u.iValue.
Remove an unnecessary ExprDup from CHECK constraint processing. And so forth. (CVS 6682)
FossilOrigin-Name: 4ac2bdfbb4230b6ceaae87e738fa61036bbe03cb
2009-05-28 01:00:55 +00:00
drh
b7916a78ff
Simplifications to the Expr object: Remove Expr.span completely and convert
...
Expr.token into a char* Expr.zToken. Also simplify the Token object by
removing the Token.dyn and Token.quoted fields. (CVS 6681)
FossilOrigin-Name: 7cb1c3ba0759539cb035978fdaff6316775986f3
2009-05-27 10:31:29 +00:00
drh
aaac8b4e1b
Enhance the parser to allow nested parentheses in the module argument of
...
a CREATE VIRTUAL TABLE statement. (CVS 6625)
FossilOrigin-Name: 93772bd7f56a5158eb46a992ba932f4695cb219f
2009-05-11 18:22:30 +00:00
drh
24fb627afa
Record within the Token structure itself whether or not the token has
...
been dequoted. This steals one bit from the length of a token and
thus limits the size of tokens to 1GiB. (CVS 6589)
FossilOrigin-Name: 12bcb03d9b9e1a31c1a3c67cbb4263cc0af2f3d0
2009-05-01 21:13:36 +00:00
drh
6da861be0e
Allow "default" to be a keyword used by PRAGMA statements. (CVS 6454)
...
FossilOrigin-Name: ed99d2d97f11784dda0f61f8e7d0eb5ca1bca371
2009-04-06 14:16:43 +00:00
drh
ada2ee0d8b
Fix the PRAGMA parser so that it can accept negative numbers in parentheses,
...
like the syntax diagrams say it should be able to. (CVS 6444)
FossilOrigin-Name: 286e83178ddcd2efe2888697bcf8cc95ccdef880
2009-04-03 01:43:57 +00:00
drh
d9da78a2c8
Changes to insure that lookaside memory allocations are never used to hold
...
schema content.
Ticket #3743 . (CVS 6377)
FossilOrigin-Name: ea74d8dc62f5784089aa8ef098e97c505a79b176
2009-03-24 15:08:09 +00:00
drh
296a483c2e
Allow the keyword INDEXED to be used as the name of a table or index or
...
column - for backwards compatibility. (CVS 6370)
FossilOrigin-Name: 53149c9f5d5cfaba3374703cd3af92a9d4cf8718
2009-03-22 20:36:18 +00:00
shane
c0688ea172
Removed compiler warnings from MSVC builds. Ticket #3701 . (CVS 6335)
...
FossilOrigin-Name: 5477833ec7f707ea9937d3fd6a6d8ab49f2016f1
2009-03-05 03:48:06 +00:00
danielk1977
6ab3a2ec8a
Changes to reduce the heap space consumed by triggers, views and tables in the in-memory representation of the schema. Also to reduce the space used by prepared statements slightly. (CVS 6305)
...
FossilOrigin-Name: d9f6ffbc5ea090ba0daac571fc9a6c68b9c864e4
2009-02-19 14:39:25 +00:00
drh
db15bcd550
Add test cases to make sure that keywords that we say can be used as
...
identifiers really can be used as identifiers. These tests were
inspired by ticket #3612 , but they do not directly address ticket #3612 . (CVS 6214)
FossilOrigin-Name: 6041ca87a16858f047727bc01f10b0bbc83609ed
2009-01-29 19:27:46 +00:00
danielk1977
78c2e6d837
Allow recently added keywords 'savepoint' and 'release' to be used as database object names. Just as they could be prior to 3.6.8. Ticket #3590 . (CVS 6186)
...
FossilOrigin-Name: 54ab8326a1ea574b183f84c8465315e989a23ca4
2009-01-16 11:04:58 +00:00
danielk1977
fd7f045225
Add the savepoint feature. This feature is largely untested at this point. (CVS 6036)
...
FossilOrigin-Name: 34b56600ec0c5cd7b5faab265750252bc9850e3e
2008-12-17 17:30:26 +00:00
drh
b27b7f5d3b
More explicit type casting to silence VC++. (CVS 6006)
...
FossilOrigin-Name: 14e6d19c3157ccdce170e769d678c7f472dd3db2
2008-12-10 18:03:45 +00:00
drh
128255fce6
Fix two unused-parameter warnings in the parser. (CVS 5990)
...
FossilOrigin-Name: cf419d0b01c0144b752f4283ba9668747339b218
2008-12-08 16:01:12 +00:00
drh
fbdc7f69b3
Allow the entire FROM clause of a SELECT statement to be in parentheses. (CVS 5973)
...
FossilOrigin-Name: 72ebc8cbe00f77f7864146de7c0954c4f1c59b8d
2008-12-03 23:23:40 +00:00
danielk1977
f96a3778f9
Fix a bug in pragma table_info. Column default values specified as negative numbers (col DEFAULT -1) were being reported as NULL by the pragma. (CVS 5839)
...
FossilOrigin-Name: 0e448bc6096c7ee3b21dbd22dc4ca9470ae7ba31
2008-10-23 05:45:07 +00:00
drh
ddecae7995
Fix to sqlite3DbMallocRaw() when SQLITE_OMIT_LOOKASIDE is defined so that
...
once it fails it continues to fail. Add a comment explaining why this is
important. (CVS 5804)
FossilOrigin-Name: 63dd8be70d333c56171dfd254406abb1af685b0f
2008-10-11 17:35:16 +00:00
drh
8867e38aab
Fix a OOM segfault in the BETWEEN operator parsing - discovered while
...
using SQLITE_OMIT_LOOKASIDE. Add SQLITE_OMIT_LOOKASIDE to test_config.c and
bypass lookaside.test when defined. (CVS 5803)
FossilOrigin-Name: 2a21d52c651ba113c472b6686dcf8ba009924305
2008-10-11 17:06:04 +00:00
shane
49ffdbf47e
Further simplifications of the code for the LIMIT clause on an UPDATE or DELETE. Added a few test cases to wherelimit.test. (CVS 5797)
...
FossilOrigin-Name: 282c6a46b25f4e4278fd4c8b0b1cde1de28d8f51
2008-10-10 18:25:45 +00:00
danielk1977
50af3e1d2d
Change 'pragma foreign_key_list' to return some extra information. (CVS 5795)
...
FossilOrigin-Name: 3bb33cf59da49f13201c0226e964cda067a4e780
2008-10-10 17:47:21 +00:00
drh
931577f1cc
Simplify the parser reduction code for the LIMIT clause on an UPDATE or
...
DELETE. (CVS 5792)
FossilOrigin-Name: 3de179630e812396ec29e77f7a06758472d0802f
2008-10-10 14:27:16 +00:00
shane
273f619b58
Updated LIMIT support for DELETE/UPDATE. Omit option changed to SQLITE_ENABLE_UPDATE_DELETE_LIMIT. (CVS 5788)
...
FossilOrigin-Name: c10e8a3c7ab7f21c95f24d0aba590f5b18a4b028
2008-10-10 04:34:16 +00:00
shane
4281bd4204
Initial support for LIMIT clause on DELETEs and UPDATEs. Changes likely with more testing. The code can be omitted with the define SQLITE_OMIT_UPDATE_DELETE_LIMIT. (CVS 5774)
...
FossilOrigin-Name: 9c8b132e34bc6024bc9898182f8f93127ca52ac9
2008-10-07 05:27:11 +00:00
danielk1977
b1c685b0c8
Allow INDEXED BY and NOT INDEXED to be used in UPDATE and DELETE statements. (CVS 5772)
...
FossilOrigin-Name: 83a7e446b2d4846a6f92bd831a2adaa265f5a786
2008-10-06 16:18:39 +00:00
danielk1977
85574e31cb
Allow INDEXED BY and NOT INDEXED clauses in SELECT statements. (CVS 5766)
...
FossilOrigin-Name: 98ca5580f5acd2e7b3ce512520ec0527f221505e
2008-10-06 05:32:18 +00:00
drh
7d10d5a6e1
Refactor the name resolution procedures in the code generator. (CVS 5569)
...
FossilOrigin-Name: daf730d1defa78fb8b80a78f9108ac35a13e09f6
2008-08-20 16:35:10 +00:00
drh
812389666c
Disallow empty triggers. Ticket #3283 . This does not present a backwards
...
compatibility problem because prior to this change, an empty trigger would
segfault. (CVS 5550)
FossilOrigin-Name: 571adab9d2215fac6ed375257a070b8ffa9d9808
2008-08-11 14:26:35 +00:00
drh
e72e728b64
Back out part of (5546): Even though ON CONFLICT clauses on CHECK constraints
...
are no-ops, if a schema includes them, the database will be unreadable if
we do not at least parse and ignore the clause. (CVS 5548)
FossilOrigin-Name: efcaeb68f943daf135972ae045eff1ca157a7f22
2008-08-08 15:06:21 +00:00
drh
200a81dcb5
Disallow the ON CONFLICT clause on CHECK constraints. The syntax used to be
...
allowed but never worked, so this should not present compatibility problems.
Other internal grammar simplifications. (CVS 5546)
FossilOrigin-Name: 4cedc641ed39982ae8cbb9200aa1e2f37c878b73
2008-08-08 14:19:41 +00:00
shane
04e86f4d99
Omit calls to sqlite3Pragma() if SQLITE_OMIT_PARSER defined. Not technically needed, as the entire generated parse.c file should not be included. (CVS 5506)
...
FossilOrigin-Name: 10e0450896a8b92b160f2e670e8d5a909c1c67ba
2008-07-31 01:40:42 +00:00
drh
633e6d57d9
Implement the "lookaside" memory allocation cache. Use of this cache makes
...
the speed1.test script run about 15% faster. Added new interfaces to
control the cache. (CVS 5488)
FossilOrigin-Name: e48f9697e9fea339e150ddc32940760027dd07d9
2008-07-28 19:34:53 +00:00
drh
e54a62ad85
Make sure expression spans are set correctly for "x.*" expressions in
...
the result set of a SELECT. Ticket #3229 . (CVS 5438)
FossilOrigin-Name: 17a9984e7668be388c4042c070718a02b284a336
2008-07-18 17:03:52 +00:00