MySQL ALTER命令学习笔记
介绍
ALTER
是 MySQL 数据库中用于修改已有表的命令,它可以用于修改表名、增加、删除或修改列、添加或删除索引等操作。在实际场景中,其应用十分广泛。
修改表名
使用 ALTER TABLE
语句来修改表名,语法如下:
Copy CodeALTER TABLE old_table_name RENAME TO new_table_name;
例如,将原来名为 student_scores
的表改为 scores
,则可以执行以下命令:
Copy CodeALTER TABLE student_scores RENAME TO scores;
修改列名和数据类型
使用 ALTER TABLE
语句来修改列名和数据类型,语法如下:
Copy CodeALTER TABLE table_name CHANGE COLUMN old_column_name new_column_name new_data_type;
例如,将原来名为 age
的列改为 years_old
,并将数据类型从 INT
改为 TINYINT
,则可以执行以下命令:
Copy CodeALTER TABLE students CHANGE COLUMN age years_old TINYINT;
增加列
使用 ALTER TABLE
语句来增加列,语法如下:
Copy CodeALTER TABLE table_name ADD COLUMN column_name data_type [DEFAULT default_value];
例如,向名为 students
的表中增加一个新的列 gender
,数据类型为 VARCHAR(10)
,默认值为 unknown
,则可以执行以下命令:
Copy CodeALTER TABLE students ADD COLUMN gender VARCHAR(10) DEFAULT 'unknown';
删除列
使用 ALTER TABLE
语句来删除列,语法如下:
Copy CodeALTER TABLE table_name DROP COLUMN column_name;
例如,从名为 students
的表中删除一个名为 gender
的列,则可以执行以下命令:
Copy CodeALTER TABLE students DROP COLUMN gender;
添加索引
使用 ALTER TABLE
语句来添加索引,语法如下:
Copy CodeALTER TABLE table_name ADD [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name(column_name);
例如,在名为 students
的表的 name
列上添加一个非唯一的索引 idx_name
,则可以执行以下命令:
Copy CodeALTER TABLE students ADD INDEX idx_name(name);
删除索引
使用 ALTER TABLE
语句来删除索引,语法如下:
Copy CodeALTER TABLE table_name DROP INDEX index_name;
例如,从名为 students
的表中删除名为 idx_name
的索引,则可以执行以下命令:
Copy CodeALTER TABLE students DROP INDEX idx_name;
以上就是关于 MySQL ALTER 命令的基本介绍和常用操作示例,希望对大家的学习有所帮助。