表操作:修改表、创建表、添加字段、创建序列、创建唯一约束
为实现数据库中表规范化设计的目的,有时候需要对之前已经创建的表进行结构修改或者调整。在 MySQL 中可以使用 ALTER TABLE 语句来改变原有表的结构,例如增加或删减列、创建或取消索引、更改原有列类型、重新命名列或表等。
基本语法
修改表指的是修改数据库中已经存在的数据表的结构。MySQL 使用 ALTER TABLE 语句修改表。常用的修改表的操作有修改表名、修改字段数据类型或字段名、增加和删除字段、修改字段的排列位置、更改表的存储引擎、删除表的外键约束等。
ALTER TABLE <表名> [修改选项]
修改选项的语法格式如下:
{ ADD COLUMN <列名> <类型>
| CHANGE COLUMN <旧列名> <新列名> <新列类型>
| ALTER COLUMN <列名> { SET DEFAULT <默认值> | DROP DEFAULT }
| MODIFY COLUMN <列名> <类型>
| DROP COLUMN <列名>
| RENAME TO <新表名> }
详见博客:http://c.biancheng.net/view/2433.html
1、修改表
-- 第一种情况:表中并没数据
alter table 表名 alter column 字段 set default 0;
-- 第二种情况:是表中已存在数据
update tablename set 字段=0; -- 修改值
alter table 表名 alter column 字段 set default 0; -- 修改默认值
2、创建表
CREATE TABLE public.edu_user
(
user_id int PRIMARY KEY NOT NULL,
phone_num varchar(32) NOT NULL,
email varchar(128) NOT NULL,
cert_num varchar(64),
name varchar(64),
address varchar(256)
);
3、添加字段
ALTER TABLE public.edu_user ADD password varchar(64);
4、创建序列
CREATE SEQUENCE seq_edu_user START 1 maxvalue 2147483647;
5、创建唯一约束
CREATE UNIQUE INDEX edu_user_phone_num_uindex ON public.edu_user (phone_num);
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2020-06-15 浅析mybatis懒加载导致无法序列化的问题、Json序列化对象时错误Could not write JSON: No serializer found for class
2020-06-15 正则表达式中 的$1,$2与实际应用
2018-06-15 深入理解VUE样式style层次分析
2017-06-15 浅析如何自定义Java异常类且修改返回http状态码及解决状态码始终是200的问题和303状态码理解