数据库常用DDL语言

数据库常用DDL语言

    • [1. 常用DDL语言](#1. 常用DDL语言)
      • [1.1 新增数据库字段](#1.1 新增数据库字段)
      • [1.2 添加外键约束](#1.2 添加外键约束)
      • [1.3 添加主键约束](#1.3 添加主键约束)
      • [1.4 添加唯一键约束](#1.4 添加唯一键约束)

数据库常用DDL语言语法总结。

1. 常用DDL语言

1.1 新增数据库字段

sh 复制代码
ALTER TABLE test1 
ADD COLUMN rule_id int
DEFAULT null
COMMNET '规则id'
AFTER id;

语句内容含义:

  • ALTER TABLE test1:其中test1为需要修改的表名
  • ADD COLUMN rule_id int:其中rule_id为需要添加的字段名,int为需要添加字段的类型
  • DEFAULT null:新增字段默认值为null
  • AFTER id:新增字段添加在id字段后面

1.2 添加外键约束

sh 复制代码
ALTER TABLE test2
ADD CONSTRAINT FK_rule_id_test1_id
FOREIGN KEY(rule_id)
REFERENCES test1(id)
ON DELETE (CASCADE | SET NULL | RESTRICT | NO ACTION)
ON UPDATE (CASCADE | SET NULL | RESTRICT | NO ACTION)

语句内容含义:

  • ALTER TABLE test2:其中test2为需要修改的表名
  • ADD CONSTRAINT FK_rule_id_test1_id:其中FK_rule_id_test1_id为添加的外键约束名称
  • FOREIGN KEY(rule_id):其中rule_id表示大肠还是得炒一下豪吃
  • `REFERENCES test1(id):其中test1表示提供外键的主表名称,id表示主表中的字段名称
  • ON DELETE (CASCADE | SET NULL | RESTRICT | NO ACTION):当主表对应值删除时,子表如何操作,CASCADE表示级联删除,SET NULL表示修改子表中的值为NULL,RESTRICT表示拒绝删除要求,NO ACTION表示无操作,这几种对应操作只能选择其一。
  • ON UPDATE (CASCADE | SET NULL | RESTRICT | NO ACTION):这个和上边DELETE同理,区别在于这个是更新主表对应值时触发。

1.3 添加主键约束

sh 复制代码
ALTER TABLE test1
ADD PRIMARY KEY (rule_id, event_id)

语句内容含义:

  • ALTER TABLE test1:其中test1表示需要修改的表名
  • ADD PRIMARY KEY (rule_id, event_id):其中(rule_id, event_id)表示添加联合主键

1.4 添加唯一键约束

sh 复制代码
ALTER TABLE test1
ADD CONSTRAINT UK_test1_name
UNIQUE (name)

语句内容含义:

  • ALTER TABLE test1:其中test1表示需要修改的表名
  • ADD CONSTRAINT UK_test1_name:其中UK_test1_name表示新增的唯一索引名称
  • UNIQUE (name):其中name表示要将唯一索引加到哪一列
相关推荐
Dcs27 分钟前
Java 中 UnaryOperator 接口与 Lambda 表达式的应用示例
java·后端
rayylee1 小时前
生活抱怨与解决方案app
数据库·生活
bagadesu2 小时前
使用Docker构建Node.js应用的详细指南
java·后端
没有bug.的程序员2 小时前
Spring Cloud Gateway 性能优化与限流设计
java·spring boot·spring·nacos·性能优化·gateway·springcloud
Lucifer三思而后行3 小时前
使用 BR 备份 TiDB 到 AWS S3 存储
数据库·tidb·aws
洛_尘3 小时前
JAVA EE初阶 2: 多线程-初阶
java·开发语言
Slow菜鸟4 小时前
Java 开发环境安装指南(五) | Git 安装
java·git
百***17074 小时前
Oracle分页sql
数据库·sql·oracle
qq_436962184 小时前
数据中台:打破企业数据孤岛,实现全域资产化的关键一步
数据库·人工智能·信息可视化·数据挖掘·数据分析
lkbhua莱克瓦245 小时前
Java基础——方法
java·开发语言·笔记·github·学习方法