MySQL基本SQL语句1(DDL)

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: SQL(Structured Query Language)结构化查询语言,用于存取,查询,更新数据以及管理关系型数据库系统SQL指令分为四类DDL Data Defintion language 数据库定义语言 用于完成对数据库对象(数据表,数据库,视图,索引)的创建,删除,修改DML Data Manipulation language 数据操作语言 用于完成对数据表中的数据添加,删除,修改DQL

目录

前言

一、DDL

1.数据库操作语句

连接服务器

代码演示

2. DDL 表操作 查询

演示

3. DDL 表操作 创建

 4. DDL 表操作 修改

 5. DDL 表操作 删除

 6. DDL 数据类型

总结


前言

SQL(Structured Query Language)结构化查询语言,用于存取,查询,更新数据以及管理关系型数据库系统

SQL指令分为四类

DDL         Data Defintion language 数据库定义语言

               用于完成对数据库对象(数据表,数据库,视图,索引)的创建,删除,修改

DML         Data Manipulation language 数据操作语言

               用于完成对数据表中的数据添加,删除,修改

DQL         Data Query language 数据查询语言

               用于将数据表中的数据查询出来

DCL         Data Control Laguage 数据控制语言

               用于完成事务管理等控制型操作

本章学习数据库基本语句DDL,以下操作配置是MySQL8.0版本


一、DDL

1.数据库操作语句

查询所有数据库 

SHOW  DATABASES;
查询当前数据库 SELECT  DATABASE();
创建数据库

CREATE DATABASE  [IF NOT EXISTS]数据库名

[DEFAULT CHARSET字符集]  [COLLATE 排序规则];

删除数据库 DROP DATABASE   [IF EXISTS] 数据库名
使用数据库 USE    数据库名

连接服务器

先输入   net start mysql80        启动MySQL服务

(80是我的版本,不一样的具体看环境变量配置)

关闭服务的命令是:net stop mysql80

image.gif

接着输入 mysql -uroot -p  然后输入自己的服务器密码

image.gif

代码演示

show databases;      查询所有数据库

image.gif

create database         if not exists lbh         charset utf8mb4;

创建数据库  在当前数据库不存在lbh数据库时    字符集为utf8mb4

(如果不加入if not exists,当前数据库已经存在这个数据库时就会报错)

image.gif

drop database [ if exists ] 数据库名 ;         删除数据库

image.gif

use 数据库名;        使用数据库

出现 Database changed 说明已经进入到这个数据库里面

用select database();命令可以查询当前所处的数据库名

image.gif

2. DDL 表操作 查询

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

演示

 查询当前数据库所有表        SHOW TABLES;

image.gif

查询表结构        DESC  表名;

image.gif

查询指定表的建表语句        SHOW CREATE TABLE  表名

image.gif

3. DDL 表操作 创建

表创建方式如下

image.gif

下面我们来代码演示 如何创建下面的这个表

id name age gender
1 小李 20
2 小黎 18
3 小叶 18

image.gif

 4. DDL 表操作 修改

添加字段

ALTER TABLE 表名 ADD 字段名 类型 (长度) [ COMMENT 注释 ] [ 约束 ];


修改数据类型

ALTER TABLE 表名 MODIFY 字段名 新数据类型 (长度);


修改字段名和字段类型

ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型 (长度) [ COMMENT 注释 ] [ 约束 ];


删除字段

ALTER TABLE 表名 DROP 字段名;  


修改表名

ALTER TABLE 表名 RENAME TO 新表名;

 5. DDL 表操作 删除

删除表

DROP TABLE [ IF EXISTS ] 表名;

加入 IF EXISTS ,只有表名存在时才会删除该表,表名不存在,则不执行删除操作(如果不

加该参数项,删除一张不存在的表,执行将会报错)


删除表 然后重新创建

TRUNCATE TABLE 表名;

删除表的时候,表中的全部数据也都会被删除

 6. DDL 数据类型

在上述的建表语句中,我们在指定字段的数据类型时,用到了int ,varchar,那么在MySQL中除了

以上的数据类型,还有哪些常见的数据类型呢

在MySQL中常用数据类型主要分为以下几类

    1. 数值类型
    2. 字符串类型
    3. 日期时间类型

    数值类型image.gif

    :

    1)年龄字段 -- 不会出现负数, 而且人的年龄不会太大

    age tinyint unsigned

    2)分数 -- 总分100, 最多出现一位小数

    score double(4,1)

    字符串类型

    image.gif

    如:

    1). 用户名 username ------> 长度不定, 最长不会超过50

    username varchar(50)

    2). 性别 gender ---------> 存储值, 不是男,就是女

    gender char(1)

    3). 手机号 phone --------> 固定长度为11

    phone char(11)

    日期时间类型image.gif

    :

    1). 生日字段 birthday

    birthday date

    2). 创建时间 createtime

    createtime datetime


    总结

    个人认为记住 int,decimal,char,varchar,date,datetime这些基本的就够日常开发使用了,我们的数据库管理系统都是不区分大小写的,但是编写规范的sql语句我们的关键字是建议使用大写。

    相关实践学习
    基于CentOS快速搭建LAMP环境
    本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
    全面了解阿里云能为你做什么
    阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
    目录
    相关文章
    |
    26天前
    |
    SQL 关系型数据库 MySQL
    mysql一条sql查询出多个统计结果
    mysql一条sql查询出多个统计结果
    15 0
    |
    1天前
    |
    SQL 关系型数据库 MySQL
    【MySQL】SQL优化
    【MySQL】SQL优化
    |
    12天前
    |
    SQL 关系型数据库 数据库
    【后端面经】【数据库与MySQL】SQL优化:如何发现SQL中的问题?
    【4月更文挑战第12天】数据库优化涉及硬件升级、操作系统调整、服务器/引擎优化和SQL优化。SQL优化目标是减少磁盘IO和内存/CPU消耗。`EXPLAIN`命令用于检查SQL执行计划,关注`type`、`possible_keys`、`key`、`rows`和`filtered`字段。设计索引时考虑外键、频繁出现在`where`、`order by`和关联查询中的列,以及区分度高的列。大数据表改结构需谨慎,可能需要停机、低峰期变更或新建表。面试中应准备SQL优化案例,如覆盖索引、优化`order by`、`count`和索引提示。优化分页查询时避免大偏移量,可利用上一批的最大ID进行限制。
    39 3
    |
    19天前
    |
    SQL 存储 关系型数据库
    【MySQL实战笔记】02.一条SQL更新语句是如何执行的-2
    【4月更文挑战第5天】两阶段提交是为确保`redo log`和`binlog`逻辑一致,避免数据不一致。若先写`redo log`, crash后数据可能丢失,导致恢复后状态错误;若先写`binlog`,crash则可能导致重复事务,影响数据库一致性。一天一备相较于一周一备,能缩短“最长恢复时间”,但需权衡额外的存储成本。
    16 1
    |
    26天前
    |
    SQL 关系型数据库 MySQL
    【MySQL】慢SQL分析流程
    【4月更文挑战第1天】【MySQL】慢SQL分析流程
    |
    29天前
    |
    SQL 关系型数据库 MySQL
    【MySQL技术之旅】(7)总结和盘点优化方案系列之常用SQL的优化
    【MySQL技术之旅】(7)总结和盘点优化方案系列之常用SQL的优化
    42 1
    |
    4天前
    |
    SQL 存储 关系型数据库
    MySQL Cluster集群安装及使用
    MySQL Cluster集群安装及使用
    |
    19天前
    |
    关系型数据库 MySQL 数据库
    mysql卸载、下载、安装(window版本)
    mysql卸载、下载、安装(window版本)
    |
    8天前
    |
    关系型数据库 MySQL 数据库
    《MySQL 简易速速上手小册》第1章:MySQL 基础和安装(2024 最新版)
    《MySQL 简易速速上手小册》第1章:MySQL 基础和安装(2024 最新版)
    34 4
    |
    2天前
    |
    关系型数据库 MySQL 数据安全/隐私保护
    安装mysql和远程连接
    安装mysql和远程连接
    12 0