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; --修改表名  
  
相关推荐
-SGlow-20 分钟前
MySQL相关概念和易错知识点(3)(表内容的CURD、内置函数)
linux·运维·服务器·数据库·mysql
飞翔的佩奇23 分钟前
基于SpringBoot+MyBatis+MySQL+VUE实现的经方药食两用服务平台管理系统(附源码+数据库+毕业论文+部署教程+配套软件)
数据库·vue.js·spring boot·mysql·毕业设计·mybatis·经方药食两用平台
bing_1581 小时前
在多租户或多服务共享 Redis 时,如何做逻辑隔离或权限控制?
数据库·redis·缓存
【上下求索】2 小时前
学习笔记090——Ubuntu 中 UFW 防火墙的使用
笔记·学习·ubuntu
ChaITSimpleLove2 小时前
PostgreSQL 中删除指定数据库下的所有表结构
数据库·postgresql·bash·sql 脚本·.net npgsql
NeRF_er2 小时前
STORM代码阅读笔记
大数据·笔记·storm
UQWRJ2 小时前
菜鸟教程Linux ViVimYumApt笔记
linux·运维·笔记
程序员Xu2 小时前
【OD机试题解法笔记】查找接口成功率最优时间段
笔记·算法
孫治AllenSun3 小时前
【Mysql】字段隐式转换对where条件和join关联条件的影响
数据库·mysql·oracle