MySQL DDL数据定义语句

1. 添加新列
sql 复制代码
ALTER TABLE table_name
ADD column_name data_type;
2. 删除列
sql 复制代码
ALTER TABLE table_name
DROP COLUMN column_name;

删除名为 email 的列:

sql 复制代码
ALTER TABLE employees
DROP COLUMN email;
3. 修改列的数据类型
sql 复制代码
ALTER TABLE table_name
MODIFY COLUMN column_name new_data_type;

修改salary 列的数据类型

sql 复制代码
ALTER TABLE employees
MODIFY COLUMN salary DECIMAL(12, 2);
4. 重命名列
sql 复制代码
ALTER TABLE table_name
RENAME COLUMN old_column_name TO new_column_name;

重命名:

sql 复制代码
ALTER TABLE employees
RENAME COLUMN first_name TO given_name;
5.其他
  • 删除外键:
sql 复制代码
alter table 从表名 drop foreign key 外键名;
  • 修改表名:

    sql 复制代码
    ALTER TABLE old_table_name RENAME TO new_table_name;-- 修改表名
  • 修改表字符集:

    sql 复制代码
    ALTER TABLE table_name CHARACTER SET new_character_set; -- 修改表的字符集
  • 修改列名称:

    sql 复制代码
    ALTER TABLE table_name CHANGE old_column_name new_column_name data_type; -- 修改列名称
  • 修改数据库:

    sql 复制代码
    ALTER DATABASE you CHARACTER SET utf8; -- 修改数据库使用的字符集

CREATE TABLE : 创建表。

基本语法
sql 复制代码
CREATE TABLE table_name (
    column1 data_type [constraints],
    column2 data_type [constraints],
    ...
);
  • constraints: 可选,定义列的约束,如 PRIMARY KEY, FOREIGN KEY, NOT NULL, UNIQUE, DEFAULT .

示例:

sql 复制代码
CREATE TABLE employees (
    employee_id INT PRIMARY KEY,--主键
    first_name VARCHAR(50) NOT NULL,
    last_name VARCHAR(50) NOT NULL,
    hire_date DATE, --日期类型
    salary DECIMAL(10, 2) --十进制类型,两位小数,10是数字的总长度,2是小数点后的位数
);
创建数据库:
sql 复制代码
CREATE DATABASE mydatabase; // 创建新的数据库
CREATE DATABASE IF NOT EXISTS mydatabase; // 创建前判断有没有存在该数据库
CREATE DATABASE example CHARACTER SET gbk; // 创建指定字符集的数据库
sql 复制代码
show databases ;--查询所有数据库  
  
select database(); --查询当前数据库  
  
--加上 if exists等就不会报错  
create database if not exists project default charset utf8mb4 collate utf8mb4_general_ci;--创建数据库,指定字符集和排序规则  
  
drop database if exists dataBaseName;-- 删除数据库  
  
use `database example`; -- 使用数据库  
  
desc user; --查询表结构  
  
DESCRIBE  user; --查询表结构  
  
show columns from  customer;-- 类似于查询表结构  
  
show tables; --查询当前数据库所有表  
  
show create table user; --查询指定表的建表语句  
  
  
create table test(  
    id int ,  
    name varchar(30),  
    salary double  
);-- 创建表  
  
alter table test add address varchar(30); -- 添加字段  
  
alter table test modify id double ; --修改数据类型  
  
alter  table  test change  id ID int; --修改字段类型和字段名称  
  
alter table  test drop  address; --删除字段  
  
alter table test rename to customer; --修改表名  
  
相关推荐
IT学长编程2 分钟前
计算机毕设选题 基于SpringBoot的房产租赁管理系统 房屋租赁系统 前后端分离 Java毕设项目 毕业设计选题 【附源码+文档报告+安装调试】
java·spring boot·毕业设计·课程设计·房屋租赁系统·房产租赁系统·文档报告
编程充电站pro38 分钟前
面试陷阱:SQL 子查询 vs JOIN 的性能差异
数据库·sql
中文Python1 小时前
小白中文Python-db_桌面小黄鸭宠物
数据库·python·pygame·宠物·中文python·小白学python
李慕婉学姐1 小时前
【开题答辩过程】以《基于 Spring Boot 的宠物应急救援系统设计与实现》为例,不会开题答辩的可以进来看看
数据库·spring boot·宠物
xian_wwq1 小时前
【学习笔记】边缘智能(Edge Intelligence):如何实现“就地决策”的方法
笔记·学习·边缘智能
我登哥MVP1 小时前
HTML-CSS-JS-入门学习笔记
javascript·css·笔记·学习·html
一只大头猿2 小时前
基于SpringBoot和Vue的超市管理系统
前端·vue.js·spring boot
倔强的石头_2 小时前
【金仓数据库】ksql 指南(二) —— 创建与管理本地数据库
数据库
不太可爱的叶某人2 小时前
【学习笔记】kafka权威指南——第8章 跨集群数据镜像(7-10章只做了解)
笔记·学习·kafka
wdfk_prog2 小时前
[Linux]学习笔记系列 -- lib/timerqueue.c Timer Queue Management 高精度定时器的有序数据结构
linux·c语言·数据结构·笔记·单片机·学习·安全