删除 SQLite 数据库中的列:实用指南
不直接支持使用标准 ALTER TABLE
语句从 SQLite 表中删除列。 SQLite 文档明确说明了此限制。 因此,需要一种解决方法。
推荐的方法包括重新创建表。此过程详细如下:
创建临时表:使用所需架构构造一个临时表,省略您要删除的列。
传输数据:将原始表中的数据复制到临时表中,排除不需要的列。
删除原始表:删除原始表。
重新创建表:使用更新的列结构(不包含已删除的列)创建一个新表。
恢复数据:将临时表中的数据插入到新创建的表中。
删除临时表:最后删除临时表。
这是一个说明此过程的 SQL 示例:
<code class="language-sql">BEGIN TRANSACTION; CREATE TEMPORARY TABLE temp_table (a, b); INSERT INTO temp_table SELECT a, b FROM original_table; DROP TABLE original_table; CREATE TABLE original_table (a, b); INSERT INTO original_table SELECT a, b FROM temp_table; DROP TABLE temp_table; COMMIT;</code>
请记住将 original_table
替换为您的实际表名称,并将 a
、b
替换为您要保留的列的名称。 该方法在有效删除指定列的同时,保证了数据的完整性。
以上是如何从 SQLite 表中删除列?的详细内容。更多信息请关注PHP中文网其他相关文章!