Small. Fast. Reliable.
Choose any three.

SQLite不支持的SQL特性
SQL Features That SQLite Does Not Implement

SQLite实现了SQL的大部分通用特性。相比尝试列出所有SQLite支持的SQL特性,列出SQLite不支持的要容易的多。下面展示了SQL中没有支持的特性。
SQLite implements most of the common features of SQL. Rather than try to list all the features of SQL that SQLite does support, it is much easier to list those that it does not. Unsupported features of SQL are shown below.

RIGHT 和 FULL OUTER JOIN
RIGHT and FULL OUTER JOIN
  实现了LEFT OUTER JOIN,但是没有实现RIGHT OUTER JOIN和FULL OUTER JOIN。
LEFT OUTER JOIN is implemented, but not RIGHT OUTER JOIN or FULL OUTER JOIN.
完整的ALTER TABLE支持
Complete ALTER TABLE support
  只有RENAME TABLE和ADD COLUMN两种形式的ALTER TABLE能支持。其它类型的ALTER TABLE操作,例如DROP COLUMN、ALTER COLUMN、ADD CONSTRAINT等等都被忽略了。
Only the RENAME TABLE and ADD COLUMN variants of the ALTER TABLE command are supported. Other kinds of ALTER TABLE operations such as DROP COLUMN, ALTER COLUMN, ADD CONSTRAINT, and so forth are omitted.
完整的触发器支持
Complete trigger support
  支持FOR EACH ROW触发器但是不支持FOR EACH STATEMENT触发器。
FOR EACH ROW triggers are supported but not FOR EACH STATEMENT triggers.
写入VIEW
Writing to VIEWs
  VIEW在SQLite中是只读的。你不能在视图上执行DELETE、INSERT或UPDATE语句。但是你可以创建一个在试图DELETE、INSERT或UPDATE一个视图时触发的触发器,并且在触发器的内容中实现你需要的内容。
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.
GRANT和REVOKE
GRANT and REVOKE
  由于SQLite读写的是一个普通的磁盘文件,所以唯一的访问限制就是下层操作系统上的标准文件防伪权限。客户端/服务端 RDBMS上一般拥有的GRANT和REVOKE命令在SQLite中没有实现,这是因为这些在嵌入式数据库引擎中是无意义的。
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.