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
drh
a9671a22b3
Remove obsolete code from select.c, including the "affinity" parameter
...
to the sqlite3Select() module. (CVS 5380)
FossilOrigin-Name: cbd3c1585b7a8f8042aa1448fe1be87de056c41a
2008-07-08 23:40:20 +00:00
danielk1977
4b5255ac31
Reorganize some of the code that detects expression trees with a depth greater than EXPR_MAX_DEPTH so that they are detected earlier. This further reduces the opportunities for stack overflow. (CVS 5189)
...
FossilOrigin-Name: 16d4c53a8e4d3cfc1abac3b8bb44d8bfd9471e32
2008-06-05 16:47:39 +00:00
drh
fdc40e9156
Continuing progress on the journal_mode pragma. It still does not work. (CVS 5027)
...
FossilOrigin-Name: 4a72a7bb9c5793cdaf4ee038482053e042d8db54
2008-04-17 20:59:37 +00:00
rse
907b46ca16
add two missing initializer values (CVS 4937)
...
FossilOrigin-Name: bf28f1c260b3efbec3b031edb97ccb7b4b039947
2008-03-29 12:50:33 +00:00
drh
b1a6c3c1cc
Reinstate test cases for the limit tests. The sqlite3_limit() API is now
...
tested and working. (CVS 4899)
FossilOrigin-Name: 4c4be4c3c8aae97f1d85442b25afba9f0b02c8b3
2008-03-20 16:30:17 +00:00
drh
4b2f9368cb
Improved test coverage for the tokenizer and sqlite3_complete() interface.
...
Fix bugs in parsing blob literals and SQL variables beginning with $. (CVS 4743)
FossilOrigin-Name: c82033faf8bdb83ce43f0dd1611408e7796d53de
2008-01-22 23:37:09 +00:00
drh
5517625960
Remove dead code from the lemon-generated parser. Better testing
...
of the sqlite3_file_control() interface, and in particular make sure
the interface works on :memory: databases. (CVS 4738)
FossilOrigin-Name: 83ca4fc7dc18d6deca58fe4181905eb9754e03da
2008-01-22 14:50:16 +00:00
drh
c4dd3fd280
Changes to lemon to generate additional comments in the output file and
...
to remove unreachable code. Additional test cases for improved test
coverage. (CVS 4736)
FossilOrigin-Name: 2a0bc1e186532a0bfe36ca18fda74a5e7a199227
2008-01-22 01:48:05 +00:00
danielk1977
6c8c8ce0e2
Combine the eDest and iParm arguments to sqlite3Select() into a single type - "SelectDest". (CVS 4657)
...
FossilOrigin-Name: 86dcdfe6d7d629618ccb3c3ff0ca09f2da2d06c7
2008-01-02 16:27:09 +00:00
drh
e9cf59e344
Fix a bug in the grammar. We were giving the ones-complement operator ~
...
the same precedence as the NOT operator, which is incorrect. (CVS 4548)
FossilOrigin-Name: b48a4bfd3288906dfb7659c37f76d345011c91a0
2007-11-17 22:23:27 +00:00