MySQL -> DDL:数据库表的创建(create),修改(alter add/drop/modify/change/rename column),复制表(like,select子查询方式)

本文主要是介绍MySQL -> DDL:数据库表的创建(create),修改(alter add/drop/modify/change/rename column),复制表(like,select子查询方式),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

创建表:create table 表 (字段 字段类型(长度 约束))

# 可以加 if not exists 表用来判断存不存在表,不存在就创建
# if  exists,存在就创建,但是没用,存在再创建就会报错,删除的时候可以用,存在就删除
create table(  id int(10),name varchar(100),age int(10)
)

修改表:add/drop/modify/change/rename

"添加表字段":add column
alter tableadd column 新字段 字段类型; # 后面跟first加到第一列的位置,after 列名,加到列后面
alter tableadd constraint 自定义名字 primary key(id);
alter tableadd primary key(id);# 给id添加主键
alter tableadd unique(座位);# 添加唯一建
alter tableadd foreign key(id) references 外表(id);# 添加外键"删除字段":drop column
alter tabledrop column 字段;
alter tabledrop primary key;# 删除表中主键
alter tabledrop foreign key;# 删除表中外键"修改字段类型,约束等":modify column
alter tablemodify column 字段 修改类型;
alter tablemodify column id int not null;# 修改成非空约束
alter tablemodify column age int default 18;# 默认18岁
alter tablemodify column id int primary key;# id修改为主键
alter tablemodify column id int primary key auto_increment;# 主键标识列"修改字段名";change
alter table 表 change column 字段 新字段名 新的类型;"修改表名":rename
alter tablerename to 新表名;# to可以省略

删除表:drop

# 可以加 if exists 表;存在就删除
drop table;
drop table if exists

复制表:copy表,创建一个复制的表(存在的表),使用like关键字复制

"复制表的结构,无数据": like
create table2 like1;"复制表部分结构":
create table2
select id,name
from1
where 1=2;# 直接让它的条件成立不了,这样就只有字段没有数据了"复制表中所有数据":copy表1所有数据
create table2
select * 
from1;"复制表中部分数据":
create table2
select id,name
from1
where 条件;

这篇关于MySQL -> DDL:数据库表的创建(create),修改(alter add/drop/modify/change/rename column),复制表(like,select子查询方式)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/194787

相关文章

Ubuntu中远程连接Mysql数据库的详细图文教程

《Ubuntu中远程连接Mysql数据库的详细图文教程》Ubuntu是一个以桌面应用为主的Linux发行版操作系统,这篇文章主要为大家详细介绍了Ubuntu中远程连接Mysql数据库的详细图文教程,有... 目录1、版本2、检查有没有mysql2.1 查询是否安装了Mysql包2.2 查看Mysql版本2.

Oracle数据库常见字段类型大全以及超详细解析

《Oracle数据库常见字段类型大全以及超详细解析》在Oracle数据库中查询特定表的字段个数通常需要使用SQL语句来完成,:本文主要介绍Oracle数据库常见字段类型大全以及超详细解析,文中通过... 目录前言一、字符类型(Character)1、CHAR:定长字符数据类型2、VARCHAR2:变长字符数

基于SpringBoot+Mybatis实现Mysql分表

《基于SpringBoot+Mybatis实现Mysql分表》这篇文章主要为大家详细介绍了基于SpringBoot+Mybatis实现Mysql分表的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可... 目录基本思路定义注解创建ThreadLocal创建拦截器业务处理基本思路1.根据创建时间字段按年进

Win11安装PostgreSQL数据库的两种方式详细步骤

《Win11安装PostgreSQL数据库的两种方式详细步骤》PostgreSQL是备受业界青睐的关系型数据库,尤其是在地理空间和移动领域,:本文主要介绍Win11安装PostgreSQL数据库的... 目录一、exe文件安装 (推荐)下载安装包1. 选择操作系统2. 跳转到EDB(PostgreSQL 的

Python3.6连接MySQL的详细步骤

《Python3.6连接MySQL的详细步骤》在现代Web开发和数据处理中,Python与数据库的交互是必不可少的一部分,MySQL作为最流行的开源关系型数据库管理系统之一,与Python的结合可以实... 目录环境准备安装python 3.6安装mysql安装pymysql库连接到MySQL建立连接执行S

SpringBoot实现数据库读写分离的3种方法小结

《SpringBoot实现数据库读写分离的3种方法小结》为了提高系统的读写性能和可用性,读写分离是一种经典的数据库架构模式,在SpringBoot应用中,有多种方式可以实现数据库读写分离,本文将介绍三... 目录一、数据库读写分离概述二、方案一:基于AbstractRoutingDataSource实现动态

Java枚举类实现Key-Value映射的多种实现方式

《Java枚举类实现Key-Value映射的多种实现方式》在Java开发中,枚举(Enum)是一种特殊的类,本文将详细介绍Java枚举类实现key-value映射的多种方式,有需要的小伙伴可以根据需要... 目录前言一、基础实现方式1.1 为枚举添加属性和构造方法二、http://www.cppcns.co

MySQL双主搭建+keepalived高可用的实现

《MySQL双主搭建+keepalived高可用的实现》本文主要介绍了MySQL双主搭建+keepalived高可用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、测试环境准备二、主从搭建1.创建复制用户2.创建复制关系3.开启复制,确认复制是否成功4.同

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S

使用Sentinel自定义返回和实现区分来源方式

《使用Sentinel自定义返回和实现区分来源方式》:本文主要介绍使用Sentinel自定义返回和实现区分来源方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Sentinel自定义返回和实现区分来源1. 自定义错误返回2. 实现区分来源总结Sentinel自定