|
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 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. | |
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. | |
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 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. |