ALTER TABLE 命令用于修改现有表的结构,其中添加列是最常见的操作之一。以下是添加列的基本语法和示例:
ALTER TABLE table_name
ADD column_name column_definition;
table_name
:要修改的表名column_name
:要添加的新列名column_definition
:列的数据类型和约束ALTER TABLE employees
ADD birth_date DATE;
ALTER TABLE products
ADD price DECIMAL(10,2) NOT NULL DEFAULT 0.00;
ALTER TABLE customers
ADD (
phone VARCHAR(15),
email VARCHAR(100) UNIQUE
);
MySQL/MariaDB:
ALTER TABLE employees
ADD middle_name VARCHAR(50) AFTER first_name;
SQL Server:
ALTER TABLE orders
ADD order_status VARCHAR(20) NOT NULL DEFAULT 'Pending';
PostgreSQL:
ALTER TABLE students
ADD age INTEGER CHECK (age >= 18);
Oracle:
ALTER TABLE sales
ADD total_amount AS (quantity * unit_price);
MySQL:
ALTER TABLE table_name
ADD COLUMN IF NOT EXISTS column_name column_definition;
SQL Server:
IF NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID('table_name') AND name = 'column_name')
BEGIN
ALTER TABLE table_name
ADD column_name column_definition;
END