当前位置: 首页 > news >正文

MySQL-SQL-DDL语句、表结构创建语句语法、表约束、表数据类型,表结构-查询SQL、修改SQL、删除SQL

一.SQL

        SQL:一门操作关系型数据库的编程语言,定义操作所有关系型数据库的统一标准

二. DDL-数据库

        1. 查询所有数据库

                命令:show databases;

        2. 查询当前数据库

                命令:select database();

        3. 创建数据库

                命令:create database [if not exists] 数据库名 [default charset utf8mb4];

                

                可选项:  if not exists-如果数据库不存在则创建;

                                default charset utf8mb4-指定数据库字符集(不写默认也是他)

                同一个数据库中数据库名不能重复;不使用if not exists重复创建则报错;

        4.使用/切换数据库

                命令:use 数据库名;

                

        5.删除数据库

                命令:drop database [if exists] 数据库名;

                不使用if exists删除不存在的数据库则会报错;

                可选项:if exists-如果存在则删除

注意: 上述语法中的database,也可以替换成schema。如create schema db01;

                MySQL8版本中,默认字符集为utf8mb4。

 三. MySQL客户端工具-图形化工具-DataGrip 安装与使用

        参照博主的 MySQL客户端工具-图形化工具-DataGrip 安装与使用 来安装

四.  DDL-表结构创建

        1. 语法

create table 表名(字段1 字段类型 [约束] [comment 字段1注释],.....字段2 字段类型 [约束] [comment 字段1注释])[comment 表注释];

         2. 约束

                (1) 约束是作用于表中字段上的规则,用于限制存储在表中的数据;目的是保证数据库中数据的正确性、有效性、完整性。

                一个字段上可以添加多个约束,约束之间用空格隔开

        3. auto_ increment 自增

        4. 数据类型

                (1) MySQL中数据类型有很多,主要分为三类:数值类型,字符串类型,日期时间类型。

                数值类型的选取原则:在满足业务需求的前提下,尽可能选择占用磁盘空间小的数据类型。

-- 创建员工表
-- 基础字段:id 主键;create_time 创建时间;update_time 更新时间
create table emp(id int unsigned primary key auto_increment comment 'id主键',username varchar(50) not null unique  comment '用户名',password varchar(32) default '123456' comment '密码,默认123456',name varchar(50) not null comment '姓名',gender tinyint unsigned not null comment '性别,1男;2女',phone char(11) not null unique comment '手机号',job tinyint unsigned comment '职务,1语文;2数学;3英语;4思想品德',salary int unsigned comment '工资',entry_date date comment '入职日期',image  varchar(300) comment '照片',create_time datetime comment '创建时间',update_time datetime comment '更新时间'
)comment '员工表';

 五. 表结构-查询、修改、删除

-- 表结构的查询、修改、删除相关语法-- 查询当前数据库的所有表
show tables;
-- 查询表结构
desc 表名;
-- 查询建表语句
show create table 表名;-- 添加字段
alter table 表名 add 字段名 类型(长度) [comment 注释] [约束];
-- 修改字段类型
alter table 表名 modify 字段名 新数据类型(长度);
-- 修改字段名和字段类型
alter table 表名 change 旧字段名 新字段名 类型(长度) [comment 注释] [约束];
-- 删除字段
alter table 表名 drop column 字段名;
-- 修改表名
alter table 表名 rename to 新表名;-- 删除表
drop table [if exists] 表名;

        在删除表时,表中的数据也会被删除。

-- 查询当前数据库的所有表
show tables;
-- 查询表结构 desc 表名;
desc emp;
-- 查询建表语句 show create table 表名;
show create table emp;-- 添加字段 alter table 表名 add 字段名 类型(长度) [comment 注释] [约束];
alter table emp add QQ VARCHAR(13) comment 'QQ号';
-- 修改字段类型 alter table 表名 modify 字段名 新数据类型(长度);
alter table emp modify QQ VARCHAR(20);
-- 修改字段名和字段类型 alter table 表名 change 旧字段名 新字段名 类型(长度) [comment 注释] [约束];
alter table emp change QQ QQ_NUM VARCHAR(20) comment 'QQ号';
-- 删除字段
alter table emp drop column QQ_NUM;
-- 修改表名 alter table 表名 rename to 新表名;
alter table emp rename to employee;-- 删除表 drop table [if exists] 表名;
drop table if exists employee;


http://www.mrgr.cn/news/97182.html

相关文章:

  • 【Android】界面布局-线性布局LinearLayout-例子
  • Linux常用基础命令应用
  • 理解OSPF 特殊区域Stub和各类LSA特点
  • Android学习总结之算法篇四(排序)
  • Vite环境下解决跨域问题
  • 黑马点评redis改 part 1
  • 源支付开源全套,源支付V7开源全套,源支付V1.8.9,源支付开源版
  • Docker 命令简写配置
  • SpringAI整合Ollama集成DeepSeek
  • 图漾相机——C#语言属性设置
  • ✅ 2025最新 | YOLO 获取 COCO 指标终极指南 | 从标签转换到 COCOAPI 评估 (训练/验证) 全覆盖【B 站教程详解】
  • ARXML文件解析-1
  • Ubuntu安装Podman教程
  • MySQL 面试知识点详解(索引、存储引擎、事务与隔离级别、MVCC、锁机制、优化)
  • Git 教程:从 0 到 1 全面指南 教程【全文三万字保姆级详细讲解】
  • 第十二步:react
  • vulkanscenegraph显示倾斜模型(5.6)-vsg::RenderGraph的创建
  • 【408--考研复习笔记】操作系统----知识点速览=
  • MySQL 知识点详解(索引、存储引擎、事务与隔离级别、MVCC、锁机制、优化)
  • Linux信号——信号的产生(1)