/usr/share/doc/sqlite-doc/omitted.html is in sqlite-doc 2.8.17-12.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 | <html>
<head>
<title>SQL Features That SQLite Does Not Implement</title>
</head>
<body bgcolor="white">
<h1 align="center">
SQL Features That SQLite Does Not Implement
</h1>
<p align=center>
(This page was last modified on 2003/08/22 02:34:30 UTC)
</p>
<p>
Rather than try to list all the features of SQL92 that SQLite does
support, it is much easier to list those that it does not.
Unsupported features of SQL92 are shown below.</p>
<p>
The order of this list gives some hint as to when a feature might
be added to SQLite. Those features near the top of the list are
likely to be added in the near future. There are no immediate
plans to add features near the bottom of the list.
</p>
<table cellpadding="10">
<tr><td valign="top"><b><nobr>CHECK constraints</nobr></b></td>
<td width="10"> </th>
<td valign="top">
CHECK constraints are parsed but they are not enforced.
NOT NULL and UNIQUE constraints are enforced, however.
</td></tr>
<tr><td valign="top"><b><nobr>Variable subqueries</nobr></b></td>
<td width="10"> </th>
<td valign="top">
Subqueries must be static. They are evaluated only once. They may not,
therefore, refer to variables in the main query.
</td></tr>
<tr><td valign="top"><b><nobr>FOREIGN KEY constraints</nobr></b></td>
<td width="10"> </th>
<td valign="top">
FOREIGN KEY constraints are parsed but are not enforced.
</td></tr>
<tr><td valign="top"><b><nobr>Complete trigger support</nobr></b></td>
<td width="10"> </th>
<td valign="top">
There is some support for triggers but it is not complete. Missing
subfeatures include FOR EACH STATEMENT triggers (currently all triggers
must be FOR EACH ROW), INSTEAD OF triggers on tables (currently
INSTEAD OF triggers are only allowed on views), and recursive
triggers - triggers that trigger themselves.
</td></tr>
<tr><td valign="top"><b><nobr>ALTER TABLE</nobr></b></td>
<td width="10"> </th>
<td valign="top">
To change a table you have to delete it (saving its contents to a temporary
table) and recreate it from scratch.
</td></tr>
<tr><td valign="top"><b><nobr>Nested transactions</nobr></b></td>
<td width="10"> </th>
<td valign="top">
The current implementation only allows a single active transaction.
</td></tr>
<tr><td valign="top"><b><nobr>The COUNT(DISTINCT X) function</nobr></b></td>
<td width="10"> </th>
<td valign="top">
You can accomplish the same thing using a subquery, like this:<br />
SELECT count(x) FROM (SELECT DISTINCT x FROM tbl);
</td></tr>
<tr><td valign="top"><b><nobr>RIGHT and FULL OUTER JOIN</nobr></b></td>
<td width="10"> </th>
<td valign="top">
LEFT OUTER JOIN is implemented, but not RIGHT OUTER JOIN or
FULL OUTER JOIN.
</td></tr>
<tr><td valign="top"><b><nobr>Writing to VIEWs</nobr></b></td>
<td width="10"> </th>
<td valign="top">
VIEWs in SQLite are read-only. You may not execute a DELETE, INSERT, or
UPDATE statement on a view. But you can create a trigger
that fires on an attempt to DELETE, INSERT, or UPDATE a view and do
what you need in the body of the trigger.
</td></tr>
<tr><td valign="top"><b><nobr>GRANT and REVOKE</nobr></b></td>
<td width="10"> </th>
<td valign="top">
Since SQLite reads and writes an ordinary disk file, the
only access permissions that can be applied are the normal
file access permissions of the underlying operating system.
The GRANT and REVOKE commands commonly found on client/server
RDBMSes are not implemented because they would be meaningless
for an embedded database engine.
</td></tr>
</table>
<p>
If you find other SQL92 features that SQLite does not support, please
add them to the Wiki page at
<a href="http://www.sqlite.org/cvstrac/wiki?p=UnsupportedSql">
http://www.sqlite.org/cvstrac/wiki?p=Unsupported</a>
</p>
<p><hr /></p>
<p><a href="index.html"><img src="/goback.jpg" border=0 />
Back to the SQLite Home Page</a>
</p>
</body></html>
|