drh
701a0aebe2
Use sqliteVdbeOp3 instead of sqliteVdbeChangeP3 where applicable. (CVS 1266)
...
FossilOrigin-Name: 51f1e8f7539596b33bc3365ec8f34041602d049c
2004-02-22 20:05:00 +00:00
drh
fcabd4641e
The name of a result column is now the name of column it originated from, by
...
default. This can be turned off with PRAGMA short_column_names=OFF. This
is to be more like PostgreSQL. More testing needed. (CVS 1250)
FossilOrigin-Name: 574dd444e7ff00e0fccc3436fe617ad832daae40
2004-02-20 14:50:58 +00:00
drh
d6502758b4
Remove the NullCallback opcode. Handle the empty_result_set pragma inside
...
the sqlite_exec() function. (CVS 1244)
FossilOrigin-Name: f72134852bf33d13fd2bc6f35251e4b33bc10fac
2004-02-16 03:44:01 +00:00
drh
826fb5a3f8
Eliminate obsolete code associated with the older callback functionality. (CVS 1243)
...
FossilOrigin-Name: 2dbc4593ca5c1cf75039c8b4471b1e47faa849f0
2004-02-14 23:59:57 +00:00
drh
a1f9b5ee0b
The sqlite_exec() function is now implemented using sqlite_compile() and
...
sqlite_step(). This opens up lots of opportunity to remove old code. (CVS 1240)
FossilOrigin-Name: 9771ad1e811e02e10bb738550fbea447749083c5
2004-02-14 16:31:02 +00:00
drh
50350a15c4
Fix a bug in the query flattener when trying to find the datatype of the
...
rowid of a view. Also fix a problem with sqlite_compile() and authorization
failures. (CVS 1236)
FossilOrigin-Name: aa0490ccd4a820a707dfb4905e67c01ffb4f758b
2004-02-13 16:22:22 +00:00
drh
8ef83ffed8
Always reload the schema after a rollback. Ticket #594 . (CVS 1229)
...
FossilOrigin-Name: 12c7a83f8e4055c4590983ef212648c781ebd963
2004-02-12 15:31:21 +00:00
drh
f620b4e2cb
After code is generated for a subquery, delete the Select structure in order
...
to force the temporary table to be used and to prevent the subquery from
being evaluated a second time. Ticket #601 . (CVS 1216)
FossilOrigin-Name: 1cff18868dab5f8ead8ed8d07e088d7fdda04569
2004-02-09 14:37:50 +00:00
drh
0c37e6309b
Make sure min() and max() optimizations work for subqueries. Ticket #587 . (CVS 1201)
...
FossilOrigin-Name: af73fbca839f8cbe39c21f1f9e439fe9b79005c8
2004-01-30 02:01:03 +00:00
drh
b733d03749
Add the ability to group FROM terms using parentheses. Names of columns in
...
a join no longer include the table name. (CVS 1197)
FossilOrigin-Name: 3626f6d4a1adb4209d5bd9e6477343b52bddbdf2
2004-01-24 20:18:12 +00:00
jplyon
4b11c6d3f4
comment typos (CVS 1192)
...
FossilOrigin-Name: 7972ee321974380a59fef752f5643d98f9df38cc
2004-01-19 04:57:53 +00:00
drh
52b36cabe0
Ignore NULLs in a subquery as the right operand of IN. Ticket #565 . (CVS 1175)
...
FossilOrigin-Name: c9e7996fb9080b715e9b273a3ac3ed3744e10a77
2004-01-14 13:38:54 +00:00
drh
dab3518880
Remove support for the Oracle8 outer join syntax. (CVS 1106)
...
FossilOrigin-Name: 824430b3ce435386b83ceb882f1510ac9f27d8fa
2003-09-27 13:39:38 +00:00
drh
7b58daeafe
Fix the LIMIT clause so that it applies to the entire query in a compound
...
query. Prior to this change LIMITs on compound queries did not work at
all. Ticket #393 . (CVS 1058)
FossilOrigin-Name: 543479e3aed77976a0c689cf40811bf88353f706
2003-07-20 01:16:46 +00:00
drh
e5f50722b4
Make sure the min() and max() optimizer works correctly when there
...
is a LIMIT clause. Ticket #396 . (CVS 1057)
FossilOrigin-Name: c35e50717678703763c696e3e9b265add2ca6454
2003-07-19 00:44:14 +00:00
drh
a88dc3f629
Make LIMIT 0 return no rows. LIMIT -1 still returns all rows. Ticket #346 . (CVS 1053)
...
FossilOrigin-Name: a31d0bd90af7cc95f8e36ca8ece21515f872235e
2003-07-16 11:51:35 +00:00
drh
ef0cae500d
Allow negative values for LIMIT and OFFSET. Add tests for negative LIMITs
...
and OFFSETs. Make the OFFSET work even if LIMIT is 0 or negative. (CVS 1052)
FossilOrigin-Name: e6a752bfef24f773973c151c6262ff331a9dc57a
2003-07-16 02:19:37 +00:00
drh
3fc673e622
Do not flatten a subquery which is the right term of a LEFT OUTER JOIN
...
if the subquery contains a WHERE clause. Ticket #350 . (CVS 1027)
FossilOrigin-Name: dd8943e8583cf7ed3b662570a5607856fd246dac
2003-06-16 00:40:34 +00:00
drh
f26e09c87f
Tighter binding of views, triggers, and indices to their respective
...
databases. Ticket #323 . Much more testing needs to be done to the
sqliteFix...() routines in attach.c. (CVS 990)
FossilOrigin-Name: 7202d4f1a8853368954a967b7ccca9d8a6645a2e
2003-05-31 16:21:12 +00:00
drh
8bf8dc9208
Fix problems with TEMP indices that lead to corrupt databases. These
...
problems were discovered while working on ticket #317 . No sure yet if
that ticket is fixed. (CVS 981)
FossilOrigin-Name: 01398fb78bab7e5c6f439f2b743f26e82118468a
2003-05-17 17:35:10 +00:00
drh
8af4d3ace6
Restrain the flattener in the presence of outer joins. Ticket #306 . (CVS 958)
...
FossilOrigin-Name: 6d4b6597e560578253960d9876dc8c8657f41fef
2003-05-06 20:35:16 +00:00
drh
c31c2eb82c
Enhance the query flattener to handle subqueries that are joins.
...
All regressions pass but new tests need to be added before release.
Ticket #272 . (CVS 948)
FossilOrigin-Name: ad57693e9f1b83a8cc4d028264b35018a9a4a701
2003-05-02 16:04:17 +00:00
drh
6a3ea0e6ef
VDBE cursors numbers for tables in a join do not have to be consecutive.
...
This is one step on the road to fixing ticket #272 . (CVS 947)
FossilOrigin-Name: be7aed2011b4af868b6a0c370c3d41354ae0cdf4
2003-05-02 14:32:12 +00:00
drh
63eb5f294c
The sqlite_complete() function should ignore carriage-return characters.
...
(Oops - some unrelated edits also made it into this check-in.) (CVS 942)
FossilOrigin-Name: c6bf62e41cf44e8ebf740b103204b00e8b826c90
2003-04-29 16:20:44 +00:00
drh
5cf590c128
Fix some issues with INSTEAD OF triggers. (CVS 930)
...
FossilOrigin-Name: 206b17397b1d2b55179c935927ff1d8215728c32
2003-04-24 01:45:04 +00:00
drh
e22a334b78
Update the authorizer API so that it reports the database that table and
...
indices belong to and so that it reports when actions are taken in response
to a trigger. (CVS 928)
FossilOrigin-Name: c675a5504138f34cae6def782b5d3add2c67d2bc
2003-04-22 20:30:37 +00:00
drh
a69d91681d
Fix triggers to work in an ATTACHed database. Ticket #295 . (CVS 915)
...
FossilOrigin-Name: 1e5e00fb73c308378efd034cb291caf338c9fe84
2003-04-17 22:57:53 +00:00
drh
d4d595f94c
Make sure the min() and max() optimizations work on empty indexed tables.
...
Ticket #296 . (CVS 914)
FossilOrigin-Name: 98ef6110068e5ed3cd77a14b004f890b79b731f7
2003-04-17 12:44:23 +00:00
drh
665de47ac3
Minor follow-on changes to the recent ATTACH patch. (CVS 892)
...
FossilOrigin-Name: e80afe75b33d4eacb40ef6128cf688f7c3253984
2003-03-31 13:36:09 +00:00
drh
da93d238c2
Add the sqliteErrorMsg() function and use it to generate error message
...
text during parsing and code generation. This simplifies the code
somewhat and makes it easier to handle names with a database prefix. (CVS 891)
FossilOrigin-Name: 1d3fc977211abdc7ba3fd51d661863e8ce5aef69
2003-03-31 02:12:46 +00:00
drh
d24cc427b7
Changes to the "sqlite" structure that allow simultaneous operations on
...
multiple database files. Many regession tests pass - but not all of them.
Do not use this version except for debugging SQLite itself. (CVS 883)
FossilOrigin-Name: d2fb2bb50cf1e13feb90995079f291384abd6ba9
2003-03-27 12:51:24 +00:00
drh
001bbcbb8f
Modifications to the VDBE to support more than one database file. (CVS 878)
...
FossilOrigin-Name: 875da9eed981bfa27b98e95025f9fdbed74b4098
2003-03-19 03:14:00 +00:00
drh
bb999ef6fa
Make the GROUP BY clause work even if there are no aggregate functions. (CVS 859)
...
FossilOrigin-Name: b68792315883eed8523f5e11856ec8378dc972c1
2003-02-02 12:41:25 +00:00
drh
88eee38afd
Allow double-quoted strings as string constants in the IN operator. As a
...
side-efffect, allow the GROUP BY clause to refer to columns by their integer
column number. Ticket #237 . (CVS 856)
FossilOrigin-Name: 187d9c405891e543fc706f8ddb41f3966a842214
2003-01-31 17:16:36 +00:00
drh
326dce7451
The callback-free API is now working, though much more testing is need. (CVS 853)
...
FossilOrigin-Name: 162b259188e6967fe9c3722da26b81aab5655d83
2003-01-29 14:06:07 +00:00
drh
e78e8284ad
Update comments. No changes to code. (CVS 841)
...
FossilOrigin-Name: f6a8706872c43cee3003b48bb427c7b74b1f89e7
2003-01-19 03:59:45 +00:00
drh
fcb78a4900
Fix datatype reporting and collating sequence selection so that it works
...
correctly on views and with the UNION, EXCEPT, and INTERCEPT operators. (CVS 839)
FossilOrigin-Name: 71cc292dce59cf8224b205d1cdbff59ad12f1043
2003-01-18 20:11:05 +00:00
drh
e5f9c6442f
Revise the sqlite_set_authorizer API to provide more detailed information
...
about the SQL statement being authorized. Only partially tested so far. (CVS 830)
FossilOrigin-Name: 45de93f913a18026a45de6254963dbcd1b0f1a19
2003-01-13 23:27:31 +00:00
drh
ed6c8671b3
Initial check-in of the code for the new sqlite_set_authorizer() API function.
...
The code is mostly untested at this point. (CVS 827)
FossilOrigin-Name: 52d5007f64d0af5286b2a0e1f0b9e53c86bece3f
2003-01-12 18:02:16 +00:00
drh
5a38705ecb
Document the SHOW_DATATYPES pragma and add tests for it to the test suite.
...
Make sure datatypes are show even for aliased columns.
Tickets #220 and #221 . (CVS 822)
FossilOrigin-Name: e84d3afe7b9153d003fdcca98221f446c004ffa2
2003-01-11 14:19:51 +00:00
drh
836faa4843
Remove the ColumnCount opcode, which had become a no-op. (CVS 821)
...
FossilOrigin-Name: 86deb12d68026913d181f9498144fa56445899f2
2003-01-11 13:30:57 +00:00
drh
c66c5a266b
Allow an aggregate function in the HAVING clause even if no aggregates appear
...
in the result set. Ticket #187 . (CVS 793)
FossilOrigin-Name: 33c6fd6b3dc271fa1f2d4500b4f76c736accefce
2002-12-03 02:34:49 +00:00
drh
174b619591
Honor ORDER BY clauses in VIEWs. Ticket #193 . (CVS 792)
...
FossilOrigin-Name: dbf7893234a6c5d6bb2d931e52080bb05784c0c9
2002-12-03 02:22:52 +00:00
drh
1f16230b5c
Minimal support for oracle8 outer join syntax. (CVS 771)
...
FossilOrigin-Name: 31df3690d0fe4bd4a293cbe8ca9a26c98c3ed3ce
2002-10-27 19:35:33 +00:00
drh
6977fea801
Correctly handle column names and string constants in parentheses.
...
Fix for ticket #179 . (CVS 770)
FossilOrigin-Name: 3b68aa25c451b7c09ece457ac2b70a9a5d93508a
2002-10-22 23:38:04 +00:00
drh
315555ca50
Work around a bug in the Borland C compiler. Ticket #172 . (CVS 765)
...
FossilOrigin-Name: 3ef2925650bfbeb4ee5dbd0aaf8e606fc4cd2be1
2002-10-20 15:53:03 +00:00
drh
ac82fcf5f0
Fix for ticket #147 : Honor the ORDER BY and LIMIT clauses in a SELECT even
...
if the destination of that SELECT is a subroutine call. (CVS 747)
FossilOrigin-Name: 23fe36c7e88282f6d1b7547ab892ea88f0e65262
2002-09-08 17:23:41 +00:00
drh
142e30df99
Slightly faster INSERTs from a SELECT by avoiding an intermediate table.
...
But it didn't make nearly as much difference as I had hoped. (CVS 732)
FossilOrigin-Name: 723362e74f79c784314d042e3a8c8a9bf07cbd5e
2002-08-28 03:00:58 +00:00
drh
8c74a8ca5b
Fix for ticket #136 : Added the OP_RenameCursor VDBE instruction and used it
...
to make cursor numbers right on nested subqueries. Also added OP_Gosub and
OP_Return but have not actually used them for anything yet. (CVS 727)
FossilOrigin-Name: c602603e7cd8dc5c8bb9db2748eacab650de5bf0
2002-08-25 19:20:40 +00:00
drh
d94a669894
Fix the memory leak introduced by check-in (725). (CVS 726)
...
FossilOrigin-Name: b957dafc26383af514795df18bc7b8f367c9bd21
2002-08-25 18:29:11 +00:00