1
0
mirror of https://github.com/sqlite/sqlite.git synced 2026-10-23 21:49:02 +03:00
Commit Graph

88 Commits

Author SHA1 Message Date
danielk1977
9e6db7d70f Ensure sqlite3ErrorMsg() is used to report errors during compilation,
sqlite3Error() during execution. Also remove unused param from
sqlite3VdbeReset() and Finalize(). (CVS 1647)

FossilOrigin-Name: 7a33daef5b49b1f2d89f27e0063372fe4f1702c8
2004-06-21 08:18:51 +00:00
danielk1977
b28af71a22 Update sqlite3_changes() to match the documentation and add
sqlite3_total_changes(). (CVS 1645)

FossilOrigin-Name: ae2f4a0943854fedbbb6fab1dc3aaf972722ed95
2004-06-21 06:50:26 +00:00
drh
a99db3b6ac Omit the sqlite3VdbeCode() routine. Use sqlite3NameFromToken() more to
reduce the amount of code. (CVS 1639)

FossilOrigin-Name: 99d0436e0ee1c917b2b7bbf005f05288b535648a
2004-06-19 14:49:12 +00:00
danielk1977
682f68b020 Add the sqlite3_set_auxdata() and sqlite3_get_auxdata() APIs. (CVS 1532)
FossilOrigin-Name: c2899b437366d879258ab4f6ae47868441010eca
2004-06-05 10:22:17 +00:00
drh
f9b596ebc0 Remove dataType and includeTypes flags from function definitions. Added new
P3_FUNCDEF type for P3 arguments on opcodes.  Fixes to several user functions.
28 tests fail now. (CVS 1464)

FossilOrigin-Name: 36e031625995b2f7baf7654d771ca8fb764a0085
2004-05-26 16:54:42 +00:00
danielk1977
3cf8606395 Add some tests for the new API. Many more to come. (CVS 1462)
FossilOrigin-Name: d5659f2ee6788e0205fb5e03eeaf64e6c0aa9bed
2004-05-26 10:11:05 +00:00
danielk1977
22322fd42b Move the sqlite3_exec() function to legacy.c. (CVS 1455)
FossilOrigin-Name: 9385ad5ca82c82d9ef699102ca0b53661d02a052
2004-05-25 23:35:17 +00:00
danielk1977
106bb236a8 Further work on the new API. All the functions to execute queries are there
now. (CVS 1427)

FossilOrigin-Name: fc94575d77f9865e1553bb70c2e3eda2a0b8669e
2004-05-21 10:08:53 +00:00
drh
ffbc30884c Sorting bug fixes. Now only 17 tests fail. (CVS 1422)
FossilOrigin-Name: 0736b7e8401f587f8b412602d029ef9bd69425f6
2004-05-21 01:29:06 +00:00
drh
d3d39e939d Add internal support for collating sequences. This breaks 244 tests. (CVS 1420)
FossilOrigin-Name: a6cb09d7af537726acc87b9133f68c81e839e047
2004-05-20 22:16:29 +00:00
drh
53db145800 sqlite3MemCompare now takes a CollSeq* argument. (CVS 1419)
FossilOrigin-Name: 5c1e47a25244eacc69b688f5f4e62cec9f09665a
2004-05-20 13:54:53 +00:00
drh
a9fd84b034 Add definitions of the CollSeq and KeyInfo structures. (CVS 1399)
FossilOrigin-Name: cd1be81569aa6d5a365eb27b7d067a153079ce45
2004-05-18 23:21:35 +00:00
danielk1977
bf3b721fab Fix many problems with manifest types and column affinity. Most things are
working now. (CVS 1393)

FossilOrigin-Name: ad4a964158ba9ca9d221cf7ea0439577f3894890
2004-05-18 10:06:24 +00:00
danielk1977
452c989fd8 Manifest types in indices. At the moment indices use manifest typing, but
some other parts of the SQL engine do not, which can lead to some strange
results. (CVS 1368)

FossilOrigin-Name: 9f2b6d9d3a07e25fcdb7e8290da7a182a65c37b2
2004-05-13 05:16:15 +00:00
danielk1977
8d059845fc Add some more code to support manifest typing in indices. Not activated yet. (CVS 1362)
FossilOrigin-Name: 2f16c9ef3c101c4280991ce3cb0c3bea7b6ed439
2004-05-12 11:24:02 +00:00
drh
ab9f7f12d5 Get the code back to the point where it will compile the btree.c tests.
Move the default key comparison routine from btree.c into vdbeaux.c.
Commented out code in vdbe.c that will need to be fixed. (CVS 1326)

FossilOrigin-Name: 2bca92240b16a51f78661c3ba4d779d231780f8d
2004-05-08 10:56:11 +00:00
danielk1977
4adee20fcb Change lots of internal symbols from sqliteXXX to sqlite3XXX so that the
library links again. It doesn't work yet, due to changes in the btree layer
calling convention. (CVS 1324)

FossilOrigin-Name: 8af6474c49263ae26216dff9465b33f76b500cf4
2004-05-08 08:23:19 +00:00
drh
701a0aebe2 Use sqliteVdbeOp3 instead of sqliteVdbeChangeP3 where applicable. (CVS 1266)
FossilOrigin-Name: 51f1e8f7539596b33bc3365ec8f34041602d049c
2004-02-22 20:05:00 +00:00
drh
905793e249 More code cleanup and size reduction. (CVS 1256)
FossilOrigin-Name: 8e3eda2a909bd80b2b14ace36ab44303750a4409
2004-02-21 13:31:09 +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
7c972dec5c Update Makefile.in for the new vdbeaux.c file. Remove the experimental
"sqlite_instantiate()" routine and replace it with "sqlite_bind()" which
is more like ODBC and JDBC. (CVS 1095)

FossilOrigin-Name: 990bb11898a539bb0795a4a216fcd989943a0fb2
2003-09-06 22:18:07 +00:00
drh
5045789694 The beginnings of changes to support pre-compiled SQL. Mostly untested,
though all regression tests to pass. (CVS 1093)

FossilOrigin-Name: 912f47c72d3597c6d5acff765d94922bd660339a
2003-09-06 01:10:47 +00:00
danielk1977
999af643a0 Add experimental sqlite_reset() API (allows pre-compiled queries) (CVS 1060)
FossilOrigin-Name: 1d2fcb017811db90e85d63f2ca76867c00ab8f1b
2003-07-22 09:24:43 +00:00
drh
048c530c01 Use a intermediate table when inserting a TEMP table from a SELECT that
reads from that same TEMP table.  Ticket #275. (CVS 895)

FossilOrigin-Name: 087d1e83af12b3a9aedd4945f02774a1043b1eb4
2003-04-03 01:50:44 +00:00
drh
483750ba8a Better error messages on constraint violations. Additional tests and bug fixes
for the callback-free API. (CVS 854)

FossilOrigin-Name: ccc82f1ab4539a60ee5cc2625743c5389f9ccd8e
2003-01-29 18:46:51 +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
b86ccfb26e First code for the new callback-free API. All regression tests pass but the
new API is mostly untested and is unlikely to work. (CVS 852)

FossilOrigin-Name: 065fa818ffc8d7562889172acea16e4e44e773ef
2003-01-28 23:13:10 +00:00
drh
7b39686749 If compiled with the -DVDBE_PROFILE=1 option, special code is inserted that
uses the pentium RDTSC instruction to compute very precise runtimes on all
VDBE opcodes.  (This only works on i586 processors, of course.)  The results
are written into the vdbe_profile.out file for analysis. Hopefully, this
new feature will reveal hot spots that can be optimized to make the VDBE run
faster. (CVS 807)

FossilOrigin-Name: a1c071ea18766932c90275c704e078134c67be68
2003-01-01 23:06:20 +00:00
drh
8f619ccd3c Modify the build process so that the VDBE opcode numbers and the table
that contains the opcode names are both automatically generated. This makes
it much easier to create new VDBE opcodes. (CVS 746)

FossilOrigin-Name: eb54d455b0325d3be96daf6c220c4ee3e0da1a85
2002-09-08 00:04:50 +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
d11d382c99 Fix for bugs #77 and #80: Rework the LIMIT mechanism to be reentrant and to
clean up the VDBE stack properly. (CVS 636)

FossilOrigin-Name: 9d5523107937e3700c76666fb058694babdd672c
2002-06-21 23:01:49 +00:00
drh
c9b84a1fb1 This patch contains the beginnings of the data-typing infrastructure.
The new build-in TypeOf() function is added.  New opcodes for doing
pure text comparisons are added.  Most changes are disabled pending
the 2.6.0 release. (CVS 632)

FossilOrigin-Name: cbbc858d973c2d515c6a2464981316549a241b73
2002-06-20 11:36:48 +00:00
drh
df199a25bd Make the LIMIT clause work even if the destination of the SELECT is
something other than a callback.  (Ticket #66) (CVS 619)

FossilOrigin-Name: 699cf362083043615eb88635a228bfa46a315c9c
2002-06-14 22:38:41 +00:00
drh
d99f70680f Add optimizations for the IN operator in WHERE clauses. This is a partial
implementation of enhancement #63.  Still need to add test cases. (CVS 610)

FossilOrigin-Name: 8481e841ebdeabe07bf780246bda1aa053eb60b7
2002-06-08 23:25:08 +00:00
drh
f5905aa7be NULL values are distinct. A comparison involving a NULL is always false.
Operations on a NULL value yield a NULL result.  This change makes SQLite
operate more like the SQL spec, but it may break existing applications that
assumed the old behavior.  All the old tests pass but we still need to add
new tests to better verify the new behavior.  Fix for ticket #44. (CVS 589)

FossilOrigin-Name: 9051173742f1b0e15a809d12a0c9c98fd2c4614d
2002-05-26 20:54:33 +00:00
drh
bd5a451d5d Change the names of the PushList and PopList opcodes to ListPush and ListPop
so that they will appear together with the other List opcodes in the
documentation. (CVS 583)

FossilOrigin-Name: c53b0b9283c5c34def87d58b03fd979d03dc0890
2002-05-23 22:07:02 +00:00
danielk1977
c3f9bad209 Added FOR EACH ROW triggers functionality (CVS 562)
FossilOrigin-Name: 794bf67b6b36fce8854d5daff12f21dbb943240c
2002-05-15 08:30:12 +00:00
drh
0ac6589202 Fix for ticket #1: Implement the GLOB and LIKE operators as functions that
can be overridden.  This way, a developer can change the LIKE operator to
be case sensitive, for example. (CVS 537)

FossilOrigin-Name: 51572bf71774d7631c7083be90b806e621bc9bee
2002-04-20 14:24:41 +00:00
drh
653bc75992 Remove unused opcodes from the VDBE and fix a bug in the substr() function. (CVS 405)
FossilOrigin-Name: e8611e0c052ddac477f83df485fa5dc882593de0
2002-02-28 03:31:10 +00:00
drh
0bce8354b4 Completely remove the old SQL function system and replace it with the
new user functions.  The code currently compiles but it coredumps on the
test suite.  Do not use in its present state. (CVS 400)

FossilOrigin-Name: 50797fee5066ec9ea23b720e5ab7e8fc8ccc1988
2002-02-28 00:41:10 +00:00
drh
1350b030c1 Revise the API for user-defined functions. (CVS 398)
FossilOrigin-Name: 633951f0fa11c91f93aa2862df84691750c01e73
2002-02-27 19:00:20 +00:00
drh
e5095355d6 Code for user-defined aggregates added. Legacy tests all pass but there
has been no testing of the new user-defined aggregate code. (CVS 392)

FossilOrigin-Name: 1e037eb303d8508cb2ea3418e71b03315d895fbd
2002-02-24 03:25:14 +00:00
drh
8e0a2f903a Added support for user-defined normal functions. Support for user-defined
aggregates is pending. (CVS 390)

FossilOrigin-Name: c490a1ff951c5d4a2de8e4f8d349189bfaef7f74
2002-02-23 23:45:45 +00:00
drh
17f7193434 Change the SQLITE_MASTER format to version 2 in preparation for adding views. (CVS 386)
FossilOrigin-Name: b2a9807fed544e83002366149b9a363759338c5d
2002-02-21 12:01:27 +00:00
drh
9562b55115 Optimize simple min() and max() queries. (CVS 382)
FossilOrigin-Name: cc5abfe392bdb8c3ed00e0610bc2b41851bfc9d7
2002-02-19 15:00:07 +00:00
drh
aaab5725db Change the name of the sanity_check PRAGMA to "integrity_check" and make
it available on all compiles. (CVS 381)

FossilOrigin-Name: c6e9048e66c8d8e2d5f6c62aa724eef3e9d9f572
2002-02-19 13:39:21 +00:00
drh
1dd397f091 The VACUUM command now does a database sanity check. (CVS 364)
FossilOrigin-Name: 95d1f8389dd5e168bdf0290169662296b6a0f6d9
2002-02-03 03:34:07 +00:00
drh
663fc63a77 Get the ABORT conflict resolution algorithm working. (CVS 362)
FossilOrigin-Name: 9be4d4c6f12056782966396dca0b8e2d384d0cf2
2002-02-02 18:49:19 +00:00
drh
9cfcf5d4f6 Beginning to insert the infrastructure for ON CONFLICT clauses. (CVS 355)
FossilOrigin-Name: e00a9ff8f99dd58f7cb19a6195fac21f4c8b4af9
2002-01-29 18:41:24 +00:00