MySQL ALTER命令知识点汇总

MySQL ALTER命令知识点汇总

什么是ALTER命令

ALTER命令是MySQL用来修改已有的表结构的命令。使用ALTER命令可以修改表名,增加、删除列,修改列的数据类型或属性,以及修改表级约束等。

常见的ALTER命令语法

修改表名

ALTER TABLE table_name RENAME TO new_table_name;

添加新列

ALTER TABLE table_name ADD COLUMN column_name column_definition [FIRST | AFTER column_name];

其中,column_definition表示新列的数据类型和约束,FIRST表示新列要添加到第一列,AFTER column_name表示新列要添加到指定列的后面。

删除列

ALTER TABLE table_name DROP COLUMN column_name;

修改列

ALTER TABLE table_name MODIFY COLUMN column_name column_definition;

或

ALTER TABLE table_name CHANGE COLUMN old_name new_name column_definition;

其中,column_definition表示新的数据类型和约束,CHANGE COLUMN语句可以同时修改列名和属性。

添加主键

ALTER TABLE table_name ADD PRIMARY KEY (column_name);

删除主键

ALTER TABLE table_name DROP PRIMARY KEY;

添加外键

ALTER TABLE child_table ADD FOREIGN KEY (column_name) REFERENCES parent_table (parent_column_name);

删除外键

ALTER TABLE child_table DROP FOREIGN KEY foreign_key_name;

修改列的默认值

ALTER TABLE table_name ALTER COLUMN column_name SET DEFAULT default_value;

修改列的约束

ALTER TABLE table_name ALTER COLUMN column_name constraint_definition;

示例说明

示例一

在students表中添加一个新的成绩列:

ALTER TABLE students ADD COLUMN score INT DEFAULT 0 AFTER age;

这条语句会在students表中添加一个名为score的整数列,并将它添加到age列后面,初始值为0。

示例二

修改students表中的成绩列名为score_new,并将其数据类型改为DOUBLE型:

ALTER TABLE students CHANGE COLUMN score score_new DOUBLE;

ALTER TABLE students MODIFY COLUMN score_new DOUBLE;

这两条语句都能实现目标,第一条语句使用了CHANGE COLUMN语句来修改列名和类型,第二条语句使用了MODIFY COLUMN语句来修改类型。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:MySQL ALTER命令知识点汇总 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • mysql5.5与mysq 5.6中禁用innodb引擎的方法

    请看下面的攻略。 禁用 InnoDB 引擎的方法 在 MySQL 5.5 和 MySQL 5.6 中禁用 InnoDB 引擎的方法不同,下面将分别介绍。 MySQL 5.5 中禁用 InnoDB 引擎的方法 在 MySQL 5.5 中,我们可以通过修改 MySQL 配置文件来禁用 InnoDB 引擎。 打开 MySQL 配置文件 my.cnf,可以使用下面的…

    database 2023年5月21日
    00
  • Derby和Impala的区别

    Derby和Impala都是Apache软件基金会的项目,但是它们主要用途和特点有很大的区别。 Derby Derby是一个纯Java开发的关系型数据库管理系统(RDBMS),它实现了Java数据库连接标准(JDBC),适用于中小型Web应用和桌面应用的开发。 Derby的主要特点包括: 开源 纯Java开发,占用资源小容易集成 可以在Java平台上运行,无…

    database 2023年3月27日
    00
  • MySQL常见数值函数整理

    MySQL常见数值函数整理 MySQL提供了许多数值函数,用于处理数值类型的数据。本文将对常见的数值函数进行整理并详细介绍,包括函数的语法、功能、示例等。 1. ABS函数 语法 ABS(X) 其中X为任意数值类型的表达式。 功能 ABS函数返回一个数的绝对值。 示例 SELECT ABS(2); — 2 SELECT ABS(-2); — 2 SELE…

    database 2023年5月22日
    00
  • PHP如何初始化PDO及原始SQL语句操作

    下面是PHP如何初始化PDO及原始SQL语句操作的完整攻略以及两个示例说明。 初始化PDO 使用PDO连接MySQL需要以下步骤: 首先创建一个PDO对象,并传入数据库连接信息。 try { $pdo = new PDO(‘mysql:host=localhost;dbname=mydatabase;charset=utf8’, ‘username’, ‘p…

    database 2023年5月21日
    00
  • 详解linux后台运行和关闭、查看后台任务

    接下来我将为你详细讲解如何在Linux后台运行和关闭进程,以及如何查看后台任务。下面是完整的攻略,希望可以帮助你更好地理解: Linux后台运行进程 在Linux中,我们使用&符号来让一个命令在后台运行,举个例子,下面的命令会让一个名为”process”的进程在后台运行: $ ./process & 如果想要确保进程在后台运行,即使当前的终端…

    database 2023年5月22日
    00
  • Java编程中void方法的学习教程

    Java编程中void方法的学习教程 介绍 在Java编程中,当需要执行一些操作却不需要返回值时,我们就可以使用void方法。本文将为大家介绍Java编程中void方法的学习教程,教大家如何定义和调用void方法,并提供一些具体的示例。 定义void方法 在Java中,定义void方法的格式为: public void methodName(paramete…

    database 2023年5月22日
    00
  • 详解SQL Server 2016快照代理过程

    详解SQL Server 2016快照代理过程 什么是SQL Server 2016快照代理? SQL Server 2016快照代理是一种用于创建和维护数据库快照(数据库镜像)的技术。通过快照代理,可以将数据从主服务器复制到备份服务器,并保证数据的一致性和完整性。 快照代理的部署过程 首先,需要在主服务器和备份服务器上安装 SQL Server 2016;…

    database 2023年5月19日
    00
  • MySQL选择合适的备份策略和备份工具

    MySQL是目前使用最为广泛的关系型数据库之一,而备份MySQL数据则是非常重要的一项工作。为了实现有效的数据备份,需要选择合适的备份策略和备份工具。本文将介绍几种可行的备份策略和备份工具,并且提供两个具体的示例说明。 备份策略 全量备份 全量备份是指备份整个MySQL数据库。这种备份策略备份的数据完整,但需要耗费大量的时间和存储空间。因此,全量备份通常每天…

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部