重命名 MySQL 数据库中的列
在本教程中,我们旨在探索在 MySQL 中重命名列的不同方法。
ALTER TABLE
命令主要用于更改给定 MySQL 表的格式。它可用于添加列、更改列内的数据类型、删除列,有时甚至重命名整个数据库。
使用 ALTER TABLE
命令更改列名称有两种主要方法。
- 带有
ALTER TABLE
命令的RENAME
语句 - 带有
ALTER TABLE
命令的CHANGE
语句
然而,在我们开始之前,我们需要创建一个虚拟数据集来使用。在这里,我们创建了一个表,student_details
,以及其中的几行。
-- create the table student_details
CREATETABLEstudent_details(stu_idint,stu_firstNamevarchar(255)DEFAULTNULL,stu_lastNamevarchar(255)DEFAULTNULL,primarykey(stu_id));-- insert rows to the table student_details
INSERTINTOstudent_details(stu_id,stu_firstName,stu_lastName)VALUES(1,"Preet","Sanghavi"),(2,"Rich","John"),(3,"Veron","Brow"),(4,"Geo","Jos"),(5,"Hash","Shah"),(6,"Sachin","Parker"),(7,"David","Miller");
上面的查询创建了一个表以及其中包含学生名字和姓氏的行。要查看数据中的条目,我们使用以下代码。
SELECT*FROMstudent_details;
上面的代码行将给出以下输出。
stu_idstu_firstNamestu_lastName1PreetSanghavi2RichJohn3VeronBrow4GeoJos5HashShah6SachinParker7DavidMiller
让我们的目标是将 stu_firstName
列重命名为简单的 firstName
。
使用 RENAME
语句重命名列
在 MySQL 中更改列名称的最基本方法之一是使用 RENAME COLUMN
子句。执行上述操作的语法可以表述如下:
ALTERTABLEtable_nameRENAMECOLUMNold_nameTOnew_name;
此处,old_name
表示要更改的列名,而 new_name
表示该列的新名称。
注意
我们不能使用表中已存在的名称重命名列。
要更改 stu_firstName
列,我们将使用以下代码:
ALTERTABLEstudent_detailsRENAMECOLUMNstu_firstNameTOfirstName;
上面的代码行将给出以下输出:
stu_idfirstNamestu_lastName1PreetSanghavi2RichJohn3VeronBrow4GeoJos5HashShah6SachinParker7DavidMiller
使用 CHANGE
语句重命名列
更改列名称的一种更复杂的方法是使用 CHANGE
子句。该子句还有助于调整列的数据类型以及列名。执行此操作的语法如下:
ALTERTABLEtable_nameCHANGEold_namenew_nameDataType;
要将 stu_firstName
列及其数据类型更改为 VARCHAR(40)
,我们将使用以下代码:
ALTERTABLEstudent_detailsCHANGEstu_firstNamefirstNameVARCHAR(40);-- Here VARCHAR(40) is the new data type
上面的代码片段将使用上面提到的新数据类型提供以下输出。
stu_idfirstNamestu_lastName1PreetSanghavi2RichJohn3VeronBrow4GeoJos5HashShah6SachinParker7DavidMiller
因此,借助上述两种技术,我们可以有效地更改 MySQL 中表的任何列的名称。我们可以得出结论,理解 ALTER TABLE
命令是探索复杂语句的先决条件。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。