• MySQL-数据定义语言-DDLdatebase define language


    库的增改删

    库创建create database

    语法

    create database [ is not exists] 库名
    [character set 字符集名];
    
    • 1
    • 2

    理解
    is not exists 如果不存在就创建;

    案例
    在这里插入图片描述

    库修改alter database

    语法:修改字符集

    alter database 库名 character set 字符集名;
    
    • 1

    在这里插入图片描述
    修改库名

    rename database 旧库名 to 新库名;
    # 一般都是在mysql中的data文件中找到数据库文件夹直接修改名字。
    
    • 1
    • 2

    在这里插入图片描述

    库删除 trop database

    语法

    drop database [if exists] 库名;
    
    • 1

    案例
    在这里插入图片描述

    字符集、字符序

    概念
    在数据存储上,MySQL提供了不同的字符集支持;
    在数据的对比操作上,提供了不同的字符序支持;

    字符集 = 定义了字符以及字符的编码
    字符序 = 字符的比较规则

    MySQL 支持多种字符集 与 字符序。
    一个字符集至少对应一个字符序(一般为一对多);
    两个不同的字符集不能有相同字符序;
    每个字符集都有默认的字符序;

    常见sql命令
    查看支持的字符集

    show character set;
    
    use information_schema;
    select * from character_sets;
    
    • 1
    • 2
    • 3
    • 4

    显示字段有:character_set_name 、 default_collate_name、description、maxlen

    查看支持的字符序

    show collation 
    
    use information_schema;
    select * from collations;
    
    • 1
    • 2
    • 3
    • 4

    备注
    information_schema 用于保存源数据的信息;

    表的增改删

    表创建create table

    语法

    create table [is not exists] 表名(
    	字段名 字段类型【长度 约束】,
    	字段名 字段类型【长度 约束】,
    	.....
    	字段名 字段类型【长度 约束】,
    );
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    案例
    一个字符是一个字符,一个汉字也是一个字符;
    在这里插入图片描述

    表修改alter table

    语法

    要求sql语句
    添加新的列alter table 表名 add column 列名 列类型 [约束];
    alter table 表名 add column 列名 列类型 [ first / later 字段名] ;
    fisrt表示新字段添加到第一列;later字段名表示添加新字段到字段名后
    删除列alter table 表名 drop column 列名;
    修改列名alter table 表名 change column 旧列名 新列名 类型;
    修改列类型 或 约束alter table 表名 modify column 列名 新类型 新约束;
    修改字段默认数据alter table 表名 alter column 列名 set default 默认值;
    修改表名alter table 表名 rename [to] 新表名;

    案例
    在这里插入图片描述

    表删除drop table

    语法

    drop table [if exists] 表名;
    
    # if exists 容错需求。
    
    • 1
    • 2
    • 3

    案例
    在这里插入图片描述

    表的复制

    语法

    需求sql语句
    仅仅复制表结构create table 新表名 like 旧表名
    复制结构 + 全部数据create table 新表名 select * from 旧表
    复制部分结构 + 部分数据create table 新表名 select 部分字段 from 旧表 where 筛选条件
    仅仅复制某些字段 没有数据create table 新表 select 某些字段 from 旧表 where false

    备注
    可以跨库复制,需要使用的是库名.表的形式。

    案例
    在这里插入图片描述

    库表常见写法

    drop database [is exists] 库名;
    drop table [is exists] 表名;
    
    create database 库名;
    create table 表名;
    
    • 1
    • 2
    • 3
    • 4
    • 5

    练习

    在这里插入图片描述

  • 相关阅读:
    mysql之搭建MMM架构实现高可用
    Pytorch2.0发布了,向下兼容,加一句代码,性能翻番
    关注短视频的“时间”,找准用户活跃时间,高流量也不是梦
    家居行业如何借助AI营销数智化转型?《2023 家居行业AI营销第一课(重庆站)》给你答案
    Docker清理
    洛谷基础题练习2
    计算机考研 创新 简史 专利 量子力学等
    基因组 DNA 分离丨Worthington核糖核酸酶A
    力扣(139.198)补8.2
    笔记本风扇科普
  • 原文地址:https://blog.csdn.net/LXMXHJ/article/details/126086742