多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# SQLite Alter 命令 SQLite 的 **ALTER TABLE** 命令不通过执行一个完整的转储和数据的重载来修改已有的表。您可以使用 ALTER TABLE 语句重命名表,使用 ALTER TABLE 语句还可以在已有的表中添加额外的列。 在 SQLite 中,除了重命名表和在已有的表中添加列,ALTER TABLE 命令不支持其他操作。 ## 语法 用来重命名已有的表的 **ALTER TABLE** 的基本语法如下: ``` ALTER TABLE database_name.table_name RENAME TO new_table_name; ``` 用来在已有的表中添加一个新的列的 **ALTER TABLE** 的基本语法如下: ``` ALTER TABLE database_name.table_name ADD COLUMN column_def...; ``` ## 实例 假设我们的 COMPANY 表有如下记录: ``` ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0 ``` 现在,让我们尝试使用 ALTER TABLE 语句重命名该表,如下所示: ``` sqlite> ALTER TABLE COMPANY RENAME TO OLD_COMPANY; ``` 上面的 SQLite 语句将重命名 COMPANY 表为 OLD_COMPANY。现在,让我们尝试在 OLD_COMPANY 表中添加一个新的列,如下所示: ``` sqlite> ALTER TABLE OLD_COMPANY ADD COLUMN SEX char(1); ``` 现在,COMPANY 表已经改变,使用 SELECT 语句输出如下: ``` ID NAME AGE ADDRESS SALARY SEX ---------- ---------- ---------- ---------- ---------- --- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0 ``` 请注意,新添加的列是以 NULL 值来填充的。