首页 > 数据库 >【MySQL入门到精通-黑马程序员】MySQL基础篇-SQL概述及DDL

【MySQL入门到精通-黑马程序员】MySQL基础篇-SQL概述及DDL

时间:2023-08-07 22:00:46浏览次数:47  
标签:数据库 SQL 注释 字段 表名 MySQL TABLE DDL


前言

本专栏文章为观看黑马程序员《MySQL入门到精通》所做笔记,课程地址在这。如有侵权,立即删除。

一、SQL

1.1 SQL通用语法

  1. SQL语句可以单行或多行书写,(默认)以分号结尾。
  2. SQL语句可以使用空格/缩进来增强语句的可读性。
  3. MySQL数据库的SQL语句不区分大小写,关键字建议使用大写。
  4. 注释:
  • 单行注释:--注释内容#注释内容(MySQL特有)。
  • 多行注释:/*注释内容*/

1.2 SQL分类

  • DDL(Data Definition Language):数据定义语言,用来 定义数据库对象(数据库、表、字段)
  • DML(Data Manipulation Language):数据操作语言,用来 对数据库表中的数据进行增删改
  • DQL(Data Query Language):数据查询语言,用来 查询数据库中表的记录
  • DCL(Data Control Language):数据控制语言,用来 创建数据库用户、控制数据库的访问权限

二、DDL

2.1 DDL-数据库操作

  • 查询
  • 查询所有数据库 SHOW DATABASES;
  • 查询当前(所处的)数据库 SELECT DATABASE();
  • 创建 CREATE DATABASE [IF NOT EXISTS] 数据库名 [DEFAULT CHARTSET 字符集] [COLLATE 排序规则];[]中语句可以选择性写入,即可省略)
  • 删除 DROP DATABASE [IF EXISTS] 数据库名;[]中语句可以选择性写入,即可省略)
  • 使用(切换到指定数据库) USE 数据库名;

2.2 DDL-表操作

2.2.1 DDL-表操作-查询

  • 查询当前数据库所有表 SHOW TABLES;
  • 查询表结构 DESC 表名;
  • 查询指定表的建表语句 SHOW CREATE TABLE 表名;

2.2.2 DDL-表操作-创建

CREATE TABLE 表名(
       字段1 字段1类型[COMMENT 字段1注释],
       字段2 字段2类型[COMMENT 字段2注释],
       字段3 字段3类型[COMMENT 字段3注释],
       ...
       字段n 字段n类型[COMMENT 字段n注释]
)[COMMENT 表注释]

注意:[]中为可选参数,最后一个字段后面没有,逗号。

2.2.3 DDL-表操作-数据类型

  1. 数值类型 (精度指数的所有位数;标度指小数点后数的位数)
  2. 字符串类型 (char类型无论存储一个或多个字符均按照设定好的大小占用,未填充的字符用空格补位;varchar类型存储几个字符就占用几个字符空间,即需要对内容进行计算存储空间大小。因此,char类型性能高;varchar性能较差。)
  3. 日期时间类型
  • 案例
  • SQL语句
create table emp(
        id int comment '编号',
        workno varchar(10) comment '员工工号',
        name varchar(10) comment '员工姓名',
        gender char(2) comment '性别',
        age tinyint unsigned comment '年龄',
        idcard char(18) comment '身份证号',
        entrydate date comment '入职时间'
 ) comment '员工信息表';
  • 运行结果

2.2.4 DDL-表操作-修改

  • 添加字段 ALTER TABLE 表名 ADD 字段名 类型(长度) [COMMENT 注释] [约束];[]中语句可以选择性写入,即可省略)
  • 修改数据类型 ALTER TABLE 表名 MODIFY 字段名 新数据类型(长度);
  • 修改字段名和字段类型 ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度) [COMMENT 注释] [约束];[]中语句可以选择性写入,即可省略)
  • 删除字段 ALTER TABLE 表名 DROP 字段名;
  • 修改表名 ALTER TABLE 表名 RENAME TO 新表名;

2.2.5 DDL-表操作-删除

  • 删除表 DROP TABLE [IF EXISTS] 表名;[]中语句可以选择性写入,即可省略)
  • 删除指定表,并重新创建该表 TRUNCATE TABLE 表名;

三、总结

【MySQL入门到精通-黑马程序员】MySQL基础篇-SQL概述及DDL_数据库

标签:数据库,SQL,注释,字段,表名,MySQL,TABLE,DDL
From: https://blog.51cto.com/u_15720469/6998842

相关文章

  • 2023-8-7 记录一次面试题,使用Sql进行递归
     题目如图所示,是数据库源,这次考官需要我用Sql,完成一次数据查询需要根据Excel数据查询结果如上图,这时候我看到了父子关系,很容易就联想到了需要使用父子关系,既然是父子关系,一般来说应该递归跑不掉了,使用Sql进行递归代码如下:WITHTEST_CTEAS(SELECT地区表1.地区编号,地区......
  • MySQL如何定位消耗CPU的SQL
    Mysql5.7版本以上在pfc下面的表threads表中添加了THREAD_OS_ID字段[[email protected]][test]>descperformance_schema.threads;+---------------------+------------------+------+-----+---------+-------+|Field|Type|Null|Key|Default|......
  • Docker安装MySQL
    安装版本为MySQL8.0.131.拉取镜像#默认拉取最新镜像dockerpullmysqldockersearch<name>#https://hub.docker.com#在网站选择具体版本dockerpullmysql:8.0.132.创建挂载目录#建立宿主机数据库目录mkdir-p/home/docker/mysql/data#建立宿主机数据库配置文件......
  • Sql去重查询数据,存在部分字段相同 max(id)  和 group by配合使用
    Sql去重查询数据原文链接:https://blog.51cto.com/u_15910936/5932613最近在工作过程中,面试过程中, 部分求职者或者同事,对sql怎么去重查询,不是太熟练今天下午忙里偷闲,整理了一下 其实sql基本的查询,还是蛮有意思,  下面是我大致整理的几种去重查询 1.存在2条一样的数据, 使......
  • SqlServer时间格式化
       sqlserver日期格式化中文-年月日selectconvert(varchar,datepart(yy,getdate()))+N'年'+convert(varchar,datepart(mm,getdate()))+N'月'+convert(varchar,datepart(dd,getdate()))+N'日',cast(datepart(yy,getdate())asvarchar)+N'年......
  • 支持多数据源联合查询的SQL运行引擎sycnany-SQL添加使用自定义函数
    在微服务和云原生愈发流行的今天,数据的分布也愈发脱离单库单机而更加复杂,使用的数据库类型也会更多,但业务的复杂依然会带来了大量的数据查询和导出需求,而很多时候我们很难为数据量的大部分系统创建完整的BI数仓系统,这时候你是不是觉得为这些需求查询和导出数据就会是一个十分困难且......
  • MySQL和MongoDB如何JOIN查询?一个直接在本地运行的SQL执行引擎
    在微服务和云原生愈发流行的今天,数据的分布也愈发脱离单库单机而更加复杂,使用的数据库类型也会更多,但业务的复杂依然会带来了大量的数据查询和导出需求,而很多时候我们很难为数据量的大部分系统创建完整的BI数仓系统,这时候你是不是觉得为这些需求查询和导出数据就会是一个十分困难且......
  • PLSQL客户端刚安装好后无法访问服务器数据库的解决方法
    1、正常安装PLSQL2、安装客户端oracle客户端工具:InstantClientSetup64w-oracle简易客户端.exe3、配置环境变量,在path中添加上面安装客户端工具的地址。4、打开plsql,即可看到登录下面多了一个选项,即可以登录使用了。......
  • Airflow 2.2.6 + MySQL 8.0.27 + Redis 7.0.12 部署Airflow任务调度平台
    本docker-compose文件在centos7.9系统,docker版本为24.0.2上测试的如果你的docker版本低于24.xxx就需要手动安装docker-compose,高于24就不需要安装了,docker已经自带了官方文档,关于docker部署1.先执行mkdir-p./dags./logs./plugins./config./......
  • Navicat Premium的mysql备份和恢复
    备份:::::::恢复::::::......