Commit Graph

39 Commits

Author SHA1 Message Date
drh
0152268793 Fix ALTER TABLE RENAME so that it correctly handles triggers that attach
to the table using the name in a different case.
Ticket [ae6794effd404].

FossilOrigin-Name: 0d78ebb8e41ba08b446b44694d9433e1e90e0a7e
2012-02-01 01:13:10 +00:00
drh
74e7c8f51f Purge lingering references to SQLITE_STAT2 from the code and test scripts.
FossilOrigin-Name: aed2bf7a3c828a7191389b3f8235a9387977b476
2011-10-21 19:06:32 +00:00
drh
50a1c56a2e Update some test cases to work with sqlite_stat3 instead of sqlite_stat2.
FossilOrigin-Name: 2504bcfb0cf14b5ce51db0af1269ac28384714e0
2011-08-15 12:58:23 +00:00
mistachkin
fda06befd5 Add retry logic for AV defense to winOpen. Also, refactor test suite to allow the key Tcl file operations (e.g. copy and delete) to be retried.
FossilOrigin-Name: 9007586fdabed8dbcc78581ea9821cfd1f9a4c8c
2011-08-02 00:57:34 +00:00
dan
33f5379c43 Changes to various test scripts so that they pass on windows.
FossilOrigin-Name: 1586244b6d86d5a98af8c6f7a8324672e02df9c3
2011-05-05 19:44:22 +00:00
dan
be53500356 Ensure that it is not possible to add a column to a system table using ALTER TABLE.
FossilOrigin-Name: d9707ef8dcd29667b6d366897f6ad02c87aa0041
2011-04-01 15:15:58 +00:00
drh
545f587fc8 When commands such as ALTER TABLE and VACUUM use SQL internally, make sure
they use only the built-in functions and not application-defined overrides
for those functions.

FossilOrigin-Name: 0291ed974d5bf1e344e2c38422530cc961b897da
2010-04-24 14:02:59 +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
0388123f07 Correctly handle attempts to add a UNIQUE or PRIMARY KEY column using
the ALTER TABLE statement.  Ticket #3651. (CVS 6291)

FossilOrigin-Name: dd179ff2986bc2a86d70bbe927fd0e123e17d398
2009-02-13 03:43:31 +00:00
drh
7382945199 Fix the ALTER TABLE RENAME algorithm so that it is not confused
by comments in the CREATE TABLE statement.  Ticket #3102. (CVS 5110)

FossilOrigin-Name: ab18b4e75916b05863b31bc63625aa64a104a42c
2008-05-09 14:17:51 +00:00
drh
8e5b5f8e54 ALTER TABLE uses double-quotes for quoting table names. (CVS 4781)
FossilOrigin-Name: 607247c27b80520b8c25c489757288b8ea186f9e
2008-02-09 14:30:29 +00:00
danielk1977
61116ae1ca Return an error if the user attempts to rename a view. Related to (but not a fix for) #2831. (CVS 4623)
FossilOrigin-Name: 19d56d997f50be81ac2baace16b7e7a1b674301a
2007-12-13 08:15:30 +00:00
drh
598f134020 Floating point and 64-bit integer constants store in the virtual
machine opcodes in binary, not as text.  Performance improvement.
Ticket #2733. (CVS 4507)

FossilOrigin-Name: 7e30fd6a09899842c922b044714dc66796e545d4
2007-10-23 15:39:45 +00:00
danielk1977
5a8f9374ab Fixes to the test suite (no code changes) so that quick.test runs with OMIT_ATTACH builds. #2706. (CVS 4480)
FossilOrigin-Name: 07c00fffe50e8380748f7ae02328531a75d64610
2007-10-09 08:29:32 +00:00
drh
7e326c09c2 Make sure pParse->rc gets set whenever sqlite3ErrorMsg() is called. This is
added insurance that parsing will stop quickly after an error.  This change
did make the parser stop faster in some cases, which required some revisions
to tests. (CVS 4010)

FossilOrigin-Name: f84d9dab110c4415d9b772f8043397640162b6b2
2007-05-15 16:51:37 +00:00
drh
9a087a99e5 Relax the restriction on using bytes 0x80 through 0xbf as the first
character of an identifier.  Enhancements to ALTER TABLE tests for
tables with strange names or stange column names. (CVS 4008)

FossilOrigin-Name: 262a3e6339b31f269f8f07e43d295b90827e2779
2007-05-15 14:34:32 +00:00
drh
eab7f3fe8d Do not allow bytes 0x80 through 0xBF to be the first character of an
identifer because no valid UTF-8 character can begin with those bytes.
If we allowed an identifier to begin with one of those bytes, then the
substr() function in ALTER TABLE will not work correctly. (CVS 4003)

FossilOrigin-Name: 252810424d8c4dcd19b369d62027094df7cf0bcc
2007-05-15 09:00:14 +00:00
drh
4e5dd85135 Fix problems in ALTER TABLE that occur when column or table names are
invalid UTF encodings. (CVS 4000)

FossilOrigin-Name: 9ff382f4584ff685a78b39f24424319709efb382
2007-05-15 03:56:49 +00:00
drh
2a9abf61c7 Make sure the parser aborts quickly following a syntax error. (CVS 3996)
FossilOrigin-Name: d07cdd3c096c120d104ae13f7932c0a955324517
2007-05-15 00:09:13 +00:00
danielk1977
dce872b94e Do not crash in the internal functions sqlite_rename_table() or sqlite_rename_trigger() if they are somehow passed unexpected input. (CVS 3944)
FossilOrigin-Name: c2f90b465e37ea49c9e44415f6461e4f636bb64f
2007-05-08 12:37:45 +00:00
drh
05f7c19a6e Test coverage improvements. Over 90% of branches are now executed in
both directions. (CVS 3820)

FossilOrigin-Name: a776d93ccae3bfa6e992cdd1387571dd21561f98
2007-04-06 02:32:33 +00:00
drh
945498f3f2 Make sure that integer values are converted to real when pulled from
a REAL table column by GROUP BY.  Ticket #2251.  Also make sure default
values are correctly expanded.  There may be other places in the code
where this issue comes up - we need to look further. (CVS 3659)

FossilOrigin-Name: e11bbf174c5a2fa75e3d1dd450c8b2a18f40e4da
2007-02-24 11:52:52 +00:00
drh
ff22e18b3c Correctly handle COLLATE clauses in tables being modified by an
ALTER TABLE ADD COLUMN command.  Ticket #1665. (CVS 3060)

FossilOrigin-Name: baef2f66be164910881278ea527d2be75ac2e944
2006-02-09 02:56:02 +00:00
danielk1977
3bdca9c9a5 Test suite fixes for builds that define OMIT symbols. (CVS 2962)
FossilOrigin-Name: 3a54a33dcb7e765ee3773397407e8929a8cfe1a9
2006-01-17 09:35:01 +00:00
danielk1977
819d7f4735 Correctly set the length of the string in bytes when transforming an OP_String8 to OP_String in a utf-16 vdbe program. (CVS 2949)
FossilOrigin-Name: 69f996e0fac1dc50b8c43d5fa132f79776843819
2006-01-15 14:11:48 +00:00
danielk1977
1576cd9251 Fixes for OMIT_SUBQUERY builds: Disable where clause OR->IN optimization. Include EXISTS keyword (for new CREATE TABLE syntax). Test file fixes. (CVS 2943)
FossilOrigin-Name: 8e79a0c24a03ccf960d6ccfb7c6b9b0f7c614e9b
2006-01-14 08:02:28 +00:00
danielk1977
79f27df664 Account for multi-byte characters in ALTER TABLE code. Fix for #1609. (CVS 2942)
FossilOrigin-Name: d634f8b28abd7af4565c644bd7972b067caa0133
2006-01-13 18:06:40 +00:00
drh
dddca28608 The sqlite TCL command no longer returns the hex address of the sqlite3*
structure.  Instead there is a new command in testfixture to find that
information. (CVS 2852)

FossilOrigin-Name: 70b228575e045bc56013aab945334203ceb31d8b
2006-01-03 00:33:50 +00:00
danielk1977
53c0f7480b Add the SQLITE_OMIT_TEMPDB compile time macro. (CVS 2427)
FossilOrigin-Name: c41d55443c2dd532147962b87f542fb7d37075fd
2005-03-29 03:10:59 +00:00
danielk1977
2b6d46b975 Tighten up the CREATE INDEX syntax accepted by the parser. (CVS 2329)
FossilOrigin-Name: 41d2214b83dd52acdda64a50d0c1ef16009d06d0
2005-02-14 06:38:40 +00:00
danielk1977
81e9674ba6 Test that it is ok to execute ALTER TABLE immediately after opening a database connection. (CVS 2281)
FossilOrigin-Name: 1d5ebb1146cc6e59d8b419b3fa4796552111606d
2005-01-27 00:30:52 +00:00
drh
b6c29897eb Add initial infrastructure for cursors. In where.c, optimize out clauses
of the form "ORDER BY rowid" if a table scan is being performed.  Do a
reverse table scan if "ORDER BY rowid DESC" is present. (CVS 2141)

FossilOrigin-Name: fc8c1393c86017a816beb52725b68af3b973f979
2004-11-22 19:12:19 +00:00
danielk1977
27c774388a Ensure tests pass when SQLITE_OMIT_COMPOUND_SELECT is defined. (CVS 2138)
FossilOrigin-Name: 007be591b7829f9ff38e4b14ba5a5043796c2ff3
2004-11-22 13:35:41 +00:00
danielk1977
023f41762c Ensure ALTER TABLE respects the system table convention - "sqlite_*". (CVS 2115)
FossilOrigin-Name: f635b6aae661ac85eec49b197f3bb4b85172a457
2004-11-19 08:41:34 +00:00
danielk1977
aacd732b11 Update the sqlite_sequence table when a table is renamed with ALTER_TABLE. (CVS 2114)
FossilOrigin-Name: 6e971868808e3c3f77fa521de626f1510ba9644a
2004-11-19 08:02:14 +00:00
danielk1977
343e92610e Fix bugs in ALTER TABLE related to (a) whitespace in table defn, (b) temp triggers. (CVS 2112)
FossilOrigin-Name: 1fd8e835a3656799c23f4ef6ea1311fecf5a15cb
2004-11-19 05:14:54 +00:00
danielk1977
d641d646ff Handle triggers correctly in ALTER TABLE. (CVS 2111)
FossilOrigin-Name: c61b7de107cea76b561d0d6cd90c752b62c5df95
2004-11-18 15:44:29 +00:00
danielk1977
1c8c23cc36 Add authorization callbacks to ALTER TABLE. (CVS 2093)
FossilOrigin-Name: c4115aa3a1b010704af76c5ae9f6dcbfa4038df8
2004-11-12 15:53:37 +00:00
danielk1977
9fd2a9a028 Add the "ALTER TABLE xxx RENAME TO yyy" command. (CVS 2092)
FossilOrigin-Name: a1b2cc63e604785bd51e358ff72c485d858752e3
2004-11-12 13:42:30 +00:00