数据库常用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表示要将唯一索引加到哪一列
相关推荐
天空属于哈夫克316 分钟前
企业微信API常见的错误和解决方案
java·数据库·企业微信
东风破13726 分钟前
DM8达梦数据库备份、恢复原理介绍
数据库·oracle·dm达梦数据库
鹏子训39 分钟前
AI记忆新思路:用SQLite替代向量数据库,去EMBEDDINGS化,谷歌开源Google Always On Memory Agent
数据库·人工智能·sqlite·embedding
Frank_refuel1 小时前
终端环境下:Ubuntu 22.04.1 安装 MySQL 数据库
数据库·mysql·ubuntu
摇滚侠1 小时前
VMvare 虚拟机 Oracle19c 安装步骤,远程连接 Oracle19c,百度网盘安装包
java·oracle
梁萌1 小时前
idea报错找不到XX包的解决方法
java·intellij-idea·启动报错·缺少包
Agent产品评测局1 小时前
生产排期与MES/ERP系统打通,实操方法详解 —— 2026企业级智能体自动化选型与实战指南
java·运维·人工智能·ai·chatgpt·自动化
阿丰资源2 小时前
基于Spring Boot的电影城管理系统(直接运行)
java·spring boot·后端
呱牛do it2 小时前
企业级门户网站设计与实现:基于SpringBoot + Vue3的全栈解决方案(Day 8)
java
虹科网络安全2 小时前
艾体宝产品|深度解读 Redis 8.4 新增功能:原子化 Slot 迁移(下)
数据库·redis·bootstrap