SQLite不支持的SQL特性

<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="center"><span>SQLite 不支持的<span lang="EN-US"> SQL </span>
特性<span lang="EN-US"></span>
</span>
</p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style=""> </span>
</p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style=""> 相对于试图列出<span lang="EN-US"> SQLite </span>
支持的所有<span lang="EN-US"> SQL92 </span>
特性,只列出不支持的部分要简单得多。下面显示的就是<span lang="EN-US"> SQLite </span>
所不支持的<span lang="EN-US"> SQL92 </span>
特性。<span lang="EN-US"></span>
</span>
</p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style=""> 这个列表的顺序关系到何时一个特性可能被加入到<span lang="EN-US">SQLite</span>
。接近列表顶部的特性更可能在不远的将来加入。接近列表底部的特性尚且没有直接的计划。 <span lang="EN-US"></span>
</span>
</p>
<table class="MsoNormalTable" style="" border="0" cellpadding="0"><tbody>
<tr style="">
<td style="border-right: #ece9d8; padding-right: 7.5pt; border-top: #ece9d8; padding-left: 7.5pt; padding-bottom: 7.5pt; border-left: #ece9d8; padding-top: 7.5pt; border-bottom: #ece9d8; background-color: transparent;" valign="top">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span><strong><span style="">外键约束(<span lang="EN-US">FOREIGN KEY constraints</span>
)</span>
</strong>
</span>
</p>
</td>
<td style="border: medium none #ece9d8; padding: 7.5pt; width: 7.5pt; background-color: transparent;" width="10">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style="" lang="EN-US"></span>
</p>
</td>
<td style="border-right: #ece9d8; padding-right: 7.5pt; border-top: #ece9d8; padding-left: 7.5pt; padding-bottom: 7.5pt; border-left: #ece9d8; padding-top: 7.5pt; border-bottom: #ece9d8; background-color: transparent;" valign="top">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style="">外键约束会被解析但不会被执行。 <span lang="EN-US"></span>
</span>
</p>
</td>
</tr>
<tr style="">
<td style="border-right: #ece9d8; padding-right: 7.5pt; border-top: #ece9d8; padding-left: 7.5pt; padding-bottom: 7.5pt; border-left: #ece9d8; padding-top: 7.5pt; border-bottom: #ece9d8; background-color: transparent;" valign="top">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><strong><span style="">完整的触发器支持(<span lang="EN-US">Complete trigger support</span>
)</span>
</strong>
<span style="" lang="EN-US"></span>
</p>
</td>
<td style="border: medium none #ece9d8; padding: 7.5pt; width: 7.5pt; background-color: transparent;" width="10">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style="" lang="EN-US"></span>
</p>
</td>
<td style="border-right: #ece9d8; padding-right: 7.5pt; border-top: #ece9d8; padding-left: 7.5pt; padding-bottom: 7.5pt; border-left: #ece9d8; padding-top: 7.5pt; border-bottom: #ece9d8; background-color: transparent;" valign="top">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style="">现在有一些触发器的支持,但是还不完整。 缺少的特性包括<span lang="EN-US"> FOR EACH STATEMENT </span>
触发器(现在所有的触发器都必须是<span lang="EN-US"> FOR EACH ROW </span>
), 在表上的<span lang="EN-US"> INSTEAD OF </span>
触发器(现在<span lang="EN-US"> INSTEAD OF </span>
触发器只允许在视图上), 以及递归触发器<span lang="EN-US">——</span>
触发自身的触发器。 <span lang="EN-US"></span>
</span>
</p>
</td>
</tr>
<tr style="">
<td style="border-right: #ece9d8; padding-right: 7.5pt; border-top: #ece9d8; padding-left: 7.5pt; padding-bottom: 7.5pt; border-left: #ece9d8; padding-top: 7.5pt; border-bottom: #ece9d8; background-color: transparent;" valign="top">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><strong><span style="">完整的<span lang="EN-US"> ALTER TABLE </span>
支持(<span lang="EN-US">Complete ALTER TABLE support</span>
)</span>
</strong>
<span style="" lang="EN-US"></span>
</p>
</td>
<td style="border: medium none #ece9d8; padding: 7.5pt; width: 7.5pt; background-color: transparent;" width="10">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style="" lang="EN-US"></span>
</p>
</td>
<td style="border-right: #ece9d8; padding-right: 7.5pt; border-top: #ece9d8; padding-left: 7.5pt; padding-bottom: 7.5pt; border-left: #ece9d8; padding-top: 7.5pt; border-bottom: #ece9d8; background-color: transparent;" valign="top">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style="">只支持<span lang="EN-US"> ALTER TABLE </span>
命令的<span lang="EN-US"> RENAME TABLE </span>
和<span lang="EN-US"> ADD COLUMN</span>
。 其他类型的<span lang="EN-US"> ALTER TABLE </span>
操作如<span lang="EN-US"> DROP COLUMN</span>
,<span lang="EN-US">ALTER COLUMN</span>
,<span lang="EN-US">ADD CONSTRAINT </span>
等等均被忽略。 <span lang="EN-US"></span>
</span>
</p>
</td>
</tr>
<tr style="">
<td style="border-right: #ece9d8; padding-right: 7.5pt; border-top: #ece9d8; padding-left: 7.5pt; padding-bottom: 7.5pt; border-left: #ece9d8; padding-top: 7.5pt; border-bottom: #ece9d8; background-color: transparent;" valign="top">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><strong><span style="">嵌套事务(<span lang="EN-US">Nested transactions</span>
)</span>
</strong>
<span style="" lang="EN-US"></span>
</p>
</td>
<td style="border: medium none #ece9d8; padding: 7.5pt; width: 7.5pt; background-color: transparent;" width="10">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style="" lang="EN-US"></span>
</p>
</td>
<td style="border-right: #ece9d8; padding-right: 7.5pt; border-top: #ece9d8; padding-left: 7.5pt; padding-bottom: 7.5pt; border-left: #ece9d8; padding-top: 7.5pt; border-bottom: #ece9d8; background-color: transparent;" valign="top">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style="">现在的实现只允许单一活动事务。 <span lang="EN-US"></span>
</span>
</p>
</td>
</tr>
<tr style="">
<td style="border-right: #ece9d8; padding-right: 7.5pt; border-top: #ece9d8; padding-left: 7.5pt; padding-bottom: 7.5pt; border-left: #ece9d8; padding-top: 7.5pt; border-bottom: #ece9d8; background-color: transparent;" valign="top">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><strong><span style="" lang="EN-US">RIGHT </span>
</strong>
<strong><span style="">和<span lang="EN-US"> FULL OUTER JOIN</span>
(<span lang="EN-US">RIGHT and FULL OUTER JOIN</span>
)</span>
</strong>
<span style="" lang="EN-US"></span>
</p>
</td>
<td style="border: medium none #ece9d8; padding: 7.5pt; width: 7.5pt; background-color: transparent;" width="10">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style="" lang="EN-US"></span>
</p>
</td>
<td style="border-right: #ece9d8; padding-right: 7.5pt; border-top: #ece9d8; padding-left: 7.5pt; padding-bottom: 7.5pt; border-left: #ece9d8; padding-top: 7.5pt; border-bottom: #ece9d8; background-color: transparent;" valign="top">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style="" lang="EN-US">LEFT OUTER JOIN </span>
<span style="">已经实现,但还没有<span lang="EN-US"> RIGHT OUTER JOIN </span>
和<span lang="EN-US"> FULL OUTER JOIN</span>
。 <span lang="EN-US"></span>
</span>
</p>
</td>
</tr>
<tr style="">
<td style="border-right: #ece9d8; padding-right: 7.5pt; border-top: #ece9d8; padding-left: 7.5pt; padding-bottom: 7.5pt; border-left: #ece9d8; padding-top: 7.5pt; border-bottom: #ece9d8; background-color: transparent;" valign="top">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><strong><span style="">可写视图(<span lang="EN-US">Writing to VIEWs</span>
)</span>
</strong>
<span style="" lang="EN-US"></span>
</p>
</td>
<td style="border: medium none #ece9d8; padding: 7.5pt; width: 7.5pt; background-color: transparent;" width="10">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style="" lang="EN-US"></span>
</p>
</td>
<td style="border-right: #ece9d8; padding-right: 7.5pt; border-top: #ece9d8; padding-left: 7.5pt; padding-bottom: 7.5pt; border-left: #ece9d8; padding-top: 7.5pt; border-bottom: #ece9d8; background-color: transparent;" valign="top">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style="" lang="EN-US">SQLite </span>
<span style="">中的视图是只读的。无法在一个视图上执行<span lang="EN-US"> DELETE</span>
,<span lang="EN-US">INSERT</span>
,<span lang="EN-US">UPDATE</span>
。 不过你可以创建一个试图在视图上<span lang="EN-US"> DELETE</span>
,<span lang="EN-US">INSERT</span>
,<span lang="EN-US">UPDATE </span>
时触发的触发器,然后在触发器中完成你所需要的工作。 <span lang="EN-US"></span>
</span>
</p>
</td>
</tr>
<tr style="">
<td style="border-right: #ece9d8; padding-right: 7.5pt; border-top: #ece9d8; padding-left: 7.5pt; padding-bottom: 7.5pt; border-left: #ece9d8; padding-top: 7.5pt; border-bottom: #ece9d8; background-color: transparent;" valign="top">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><strong><span style="" lang="EN-US">GRANT </span>
</strong>
<strong><span style="">和<span lang="EN-US"> REVOKE</span>
(<span lang="EN-US">GRANT and REVOKE</span>
)</span>
</strong>
<span style="" lang="EN-US"></span>
</p>
</td>
<td style="border: medium none #ece9d8; padding: 7.5pt; width: 7.5pt; background-color: transparent;" width="10">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style="" lang="EN-US"></span>
</p>
</td>
<td style="border-right: #ece9d8; padding-right: 7.5pt; border-top: #ece9d8; padding-left: 7.5pt; padding-bottom: 7.5pt; border-left: #ece9d8; padding-top: 7.5pt; border-bottom: #ece9d8; background-color: transparent;" valign="top">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style="">由于<span lang="EN-US"> SQLite </span>
读和写的是一个普通的磁盘文件, 因此唯一可以获取的权限就是操作系统的标准的文件访问权限。 一般在客户机<span lang="EN-US">/</span>
服务器架构的关系型数据库系统上能找到的<span lang="EN-US"> GRANT </span>
和<span lang="EN-US"> REVOKE </span>
命令对于一个嵌入式的数据库引擎来说是没有意义的, 因此也就没有去实现。 <span lang="EN-US"></span>
</span>
</p>
</td>
</tr>
</tbody></table>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;" align="left"><span style="">如果你发现<span lang="EN-US"> SQLite </span>
不支持的其它<span lang="EN-US"> SQL92 </span>
特性,请在<span lang="EN-US">Wiki <a href="http://www.sqlite.org/cvstrac/wiki?p=UnsupportedSql"><span style="color: #50695f;">http://www.sqlite.org/cvstrac/wiki?p=Unsupported</span>
</a>
</span>
中添加。<span lang="EN-US"></span>
</span>
</p>

你可能感兴趣的:(sqlite)