以下语句错误的是( ) A、alter table emp delete column addcolumn B、alter table emp modify column addcolumn char(10) C、alter table emp change addcolumn int D、alter table emp add column addcolumn int
选项 A:ALTER TABLE emp DELETE COLUMN addcolumn
ALTER TABLE emp DELETE COLUMN addcolumn
错误原因:删除列的语法应为 DROP COLUMN,而非 DELETE COLUMN。
DROP COLUMN
DELETE COLUMN
正确写法:
sql
复制
ALTER TABLE emp DROP COLUMN addcolumn;
选项 C:ALTER TABLE emp CHANGE addcolumn int
ALTER TABLE emp CHANGE addcolumn int
错误原因:CHANGE 需要同时指定 旧列名 和 新列名,即使列名不变也要重复。
CHANGE
ALTER TABLE emp CHANGE addcolumn addcolumn INT; -- 不修改列名,仅改类型 -- 或修改列名和类型 ALTER TABLE emp CHANGE addcolumn new_column_name INT;
错误的语句是 **A、C、D**,具体分析如下:
---
### **A. `alter table emp delete column addcolumn`**
- **错误原因**:删除列的语法应为 `DROP COLUMN`,而非 `DELETE`。
- **正确写法**:
```sql
```
### **C. `alter table emp change addcolumn int`**
- **错误原因**:`CHANGE` 命令需要同时指定**旧列名**和**新列名**(即使不重命名,也必须重复列名),并定义新数据类型。
ALTER TABLE emp CHANGE addcolumn addcolumn INT;
-- 或仅修改类型(推荐使用 MODIFY):
ALTER TABLE emp MODIFY addcolumn INT;
### **D. `alter table emp add column addcolumn`**
- **错误原因**:`ADD COLUMN` 必须指定新列的**数据类型**。
ALTER TABLE emp ADD COLUMN addcolumn INT;
### **B. `alter table emp modify column addcolumn char(10)`**
- **正确性**:语法正确。`MODIFY COLUMN` 用于修改列的数据类型,此处将 `addcolumn` 列的类型改为 `CHAR(10)`。
- **注意**:某些数据库(如 Oracle)使用 `ALTER COLUMN`,但 `MODIFY COLUMN` 是 MySQL 的标准语法。
### 总结
- **错误选项**:A、C、D
- **正确选项**:B
drop
A
用户登录可进行刷题及查看答案
登录后提交答案