修改SQLite表:删除列
问题:
尝试使用以下查询从SQLite数据库表中删除一列:
<code class="language-sql">ALTER TABLE table_name DROP COLUMN column_name;</code>
但是,没有成功。解决方法是什么?
答案:
在SQLite 3.35.0 (2021-03-12) 之前的版本中,不支持直接删除列。要进行此类更改,需要更复杂的方法:
<code class="language-sql">CREATE TEMPORARY TABLE t1_backup (a, b); INSERT INTO t1_backup SELECT a, b FROM t1;</code>
<code class="language-sql">DROP TABLE t1;</code>
<code class="language-sql">CREATE TABLE t1 (a, b);</code>
<code class="language-sql">INSERT INTO t1 SELECT a, b FROM t1_backup;</code>
<code class="language-sql">DROP TABLE t1_backup;</code>
<code class="language-sql">COMMIT;</code>
更新:
SQLite 3.35.0 及更高版本现在直接支持DROP COLUMN子句,从而可以更轻松地从表中删除列。
以上是如何从 SQLite 表中删除列?的详细内容。更多信息请关注PHP中文网其他相关文章!