玖叶教程网

前端编程开发入门

MySQL中那些常见,实则在生产环境中很少甚至不会用到SQL

前言

很多朋友其实在刚开始接触学习MySQL的时候,都会从最基本的SQL语句分类学起,知道了SQL大致就分为5类:数据查询语言(DQL,Data Query Language)、数据定义语言(DDL,Data Definition Language)、数据操纵语言(DML,Data Manipulation Language)、数据控制语言(DCL,Data Control Language)、事务控制语言(TCL、Transaction Control Language),了解完这些后,然后把这些无差别的都练习一遍。

实际上,当我们进入工作中后,我们用的最多的实际就是单一查询操作,就是我们上面说的DQL语句。为什么呢?因为系统一旦上线,也就是到了我们的生产环境中。如果你还用DQL之外的SQL去操作表,随时都有可能对表的数据或者表的结构造成改变。比如在生产环境下使用DML语句对某个表的某一行数据进行了改动,又或者用其他语句,对某个数据库账号权限进行了改动,甚至对表结构进行了改动,都有可能造成生产事故。

此上这些话,主要是想跟刚入行的朋友们提下,学习MySQL也好,又或是其他数据库学习,都基本差不多的思路,除了DQL需要好好学习,其他的SQL只需大致了解就好,如果万一有需要使用到DQL之外的SQL语句,直接问度娘即可;我们应该把时间花在不同场景的查询语句上,因为这才是我们进入工作后真正用来“吃饭”的东西。

说了这么多前话,我们还是进入今日的主题,到底哪些SQL是我们在生产中不轻易使用的SQl,小编也是顺便和大家一起复习一下这些语句,一起学习成长。

正文

一、修改表结构SQL

1.添加列

ALTER TABLE table_name 
ADD column_name datatype [NOT NULL] [DEFAULT default_value] [AFTER column_name];
  • table_name:是你想要修改的表名。
  • column_name:是你想要添加的列名。
  • datatype:是新列的数据类型(如 INT, VARCHAR(255), DATETIME 等)。
  • [NOT NULL]:是可选的,用来指定该列不能存储NULL值。
  • [DEFAULT default_value]:是可选的,用来为新列设置默认值。
  • [AFTER column_name]:是可选的,用来指定新列在表中的位置(MySQL 8.0.13之前的版本可能不支持)。

2.删除列

ALTER TABLE table_name 
DROP COLUMN column_name;
  • table_name:是表名。
  • column_name:是你想要删除的列名。

3.修改列的数据类型

  • 第一种仅更改列的数据类型,不更改列名。
ALTER TABLE table_name  
MODIFY COLUMN column_name new_datatype;
  • 第二种可以更改列名和数据类型。
ALTER TABLE table_name  
CHANGE COLUMN column_name new_column_name new_datatype;

4.修改列的默认值

ALTER TABLE table_name  
ALTER COLUMN column_name SET DEFAULT default_value;

ALTER TABLE table_name  
MODIFY COLUMN column_name datatype DEFAULT default_value;

5.重命名表

RENAME TABLE old_table_name TO new_table_name;

6.添加索引

ALTER TABLE table_name  
ADD INDEX index_name (column_name);

或者添加唯一索引:

ALTER TABLE table_name  
ADD UNIQUE (column_name);

7.删除索引

ALTER TABLE table_name  
DROP INDEX index_name;

注意事项

  • 在对生产数据库执行ALTER TABLE语句之前,强烈建议备份数据库。
  • 大规模的表结构更改(如添加或删除大量列)可能会影响数据库的性能和可用性,特别是在包含大量数据的表上。
  • 在执行修改之前,了解你的MySQL版本和存储引擎(如InnoDB、MyISAM)的特定限制和特性是很重要的。

这些示例为你提供了使用ALTER TABLE语句修改MySQL表结构的基本方法。根据你的具体需求,可能需要将这些基本命令组合起来使用。

收尾

上述这些SQL语句,是小编前几日在工作中,恰巧遇到其中一个场景,但当时不知道怎么用,然后也是网上学习后,和大家分享一下,这些肯定总结的不全,如有小伙伴有兴趣也可在评论区一起补充,一起学习进步。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言