首页 > 数据库 >MySQL入门系列1-数据定义语言(DDL)

MySQL入门系列1-数据定义语言(DDL)

时间:2023-09-04 16:34:01浏览次数:47  
标签:COMMENT SQL 数据库 MySQL 定义语言 数据表 字段 DDL TABLE

一、概念

DDL:数据定义语言,用来定义数据库对象,包含数据库、数据表、数据表中的字段。

二、数据库相关操作

1.查询所有数据库

show databases;

MySQL入门系列1-数据定义语言(DDL)_DDL

2.查询当前所在的数据库

select database();

MySQL入门系列1-数据定义语言(DDL)_DDL_02

3.创建数据库

create database if not exists 数据库名;

MySQL入门系列1-数据定义语言(DDL)_数据库_03

4.删除数据库

drop database 数据库名;

MySQL入门系列1-数据定义语言(DDL)_DDL_04

5.切换数据库

use 数据库名;

MySQL入门系列1-数据定义语言(DDL)_MySQL_05

二、数据表相关操作

1.创建数据表

格式:

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

SQL语句:

CREATE TABLE sys_user (
	id BIGINT PRIMARY KEY auto_increment COMMENT 'ID',
name VARCHAR ( 50 ) COMMENT '姓名',
age INT COMMENT '年龄')

MySQL入门系列1-数据定义语言(DDL)_数据库_06

2.添加字段

格式:

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

SQL语句:

ALTER TABLE sys_user ADD address VARCHAR ( 50 ) COMMENT '地址';

MySQL入门系列1-数据定义语言(DDL)_MySQL_07

3.修改数据表字段

格式:

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

SQL语句:

ALTER TABLE sys_user MODIFY address VARCHAR ( 100 ) COMMENT '地址';

MySQL入门系列1-数据定义语言(DDL)_DDL_08

4.删除数据表字段

格式:

ALTER TABLE 表名 DROP  字段名;

SQL语句:

ALTER TABLE sys_user DROP address;

MySQL入门系列1-数据定义语言(DDL)_MySQL_09

5.查看当前数据库的所有数据表

格式:

show 数据库名;

SQL语句:

show TABLES;

MySQL入门系列1-数据定义语言(DDL)_数据定义语言_10

6.查看数据表的结构

格式:

desc 数据表名;

SQL语句:

desc sys_user;

MySQL入门系列1-数据定义语言(DDL)_数据库_11

7.修改当前数据表名

格式:

ALTER TABLE 表名 RENAME TO  新表名;

SQL语句:

ALTER TABLE sys_user RENAME t_user;

MySQL入门系列1-数据定义语言(DDL)_DDL_12

8.删除表

格式:

DROP  TABLE [ IF  EXISTS ]  表名;

SQL语句:

DROP TABLE IF EXISTS t_user;

MySQL入门系列1-数据定义语言(DDL)_DDL_13

9.删除指定表,并重新创建表

格式:

TRUNCATE  TABLE 表名;

SQL语句:

TRUNCATE TABLE sys_user;

MySQL入门系列1-数据定义语言(DDL)_数据库_14

三、表字段数据类型介绍

数值型:

类型

描述

TINYINT

小整数值

SMALLINT

大整数值

MEDIUMINT

大整数值

INT

大整数值

BIGINT

极大整数值

FLOAT

单精度浮点数值

DOUBLE

双精度浮点数值

DECIMAL

小数值(精确定点数) M:表示数值的长度,D表示小数位的长度

字符串类型:

类型

描述

CHAR

定长字符串

VARCHAR

变长字符串

TINYBLOB

不超过255个字符的二进制数据

TINYTEXT

短文本字符串

BLOB

二进制形式的长文本数据

TEXT

长文本数据

MEDIUMBLOB

二进制形式的中等文本数据

MEDIUMTEXT

中等长度文本数据

LONGBLOB

二进制形式的极大文本数据

LONGTEXT

极大文本数据

日期时间类型:

类型

描述

DATE

日期值

TIME

时间值

YEAR

年份值

DATETIME

混合日期和时间值

TIMESTAMP

混合日期和时间值,时间戳


标签:COMMENT,SQL,数据库,MySQL,定义语言,数据表,字段,DDL,TABLE
From: https://blog.51cto.com/u_13312531/7352165

相关文章

  • MySQL的Json类型个人用法详解
    ​ 前言虽然MySQL很早就添加了Json类型,但是在业务开发过程中还是很少设计带这种类型的表。少不代表没有,当真正要对Json类型进行特定查询,修改,插入和优化等操作时,却感觉一下子想不起那些函数怎么使用。比如把json里的某个键和值作为SQL条件,修改某个键下的子键的值,其中可能会遇到......
  • Mysql获取时间处理
    前置:当前时间:2023-09-04 Mysql获取昨天0点时间:SELECTTIMESTAMP(date_add(curdate(),INTERVAL-1DAY));  Mysql获取昨天23点59分59秒时间:SELECTDATE_SUB(DATE_ADD(CURRENT_DATE,INTERVAL0DAY),INTERVAL1SECOND)   Mysql获取当天0点的时间:S......
  • mysql各个执行阶段
    问题如果表T中没有字段k,而你执行了这个语句select*fromTwherek=1,那肯定是会报“不存在这个列”的错误:“Unknowncolumn‘k’in‘whereclause’”。你觉得这个错误是在我们上面提到的哪个阶段报出来的呢?分析优化器会进行优化分析,比如用先执行哪个条件参考......
  • MySQL MGR集群部署运维常用脚本
    Linux系统-部署-运维系列导航 安装、初始化操作汇总注意:Pass.Test.123替换为真实的root账号密码,Repl.pass.123替换为真实的mgr集群创建时group_replication_recovery通道的密码 #初始化、重置mysqlrm-rf/data/mysql/;mkdir-p/data/mysql/data/data/mysql/log;......
  • MySQL联表查询优化
    Linux系统-部署-运维系列导航  sql执行顺序执行FROM语句执行ON过滤join添加外部行执行where条件过滤执行groupby以及分组语句,(开始使用select中的别名,后面的语句中都可以使用别名)执行havingselect列表执行distinct去重复数据执行orderby字句执行limit字句 ......
  • MybatisPlus处理Mysql的json类型
    MybatisPlus处理Mysql的json类型1、在数据库表定义JSON字段;2、在实体类加上@TableName(autoResultMap=true)、在JSON字段映射的属性加上@TableField(typeHandler=JacksonTypeHandler.class);1.实体类中有个属性是其他对象,或者是List;在数据库中存储时使用的是mysql的json格式,此......
  • mysql到达梦存储过程常见问题
    1.1 变量的使用createorreplaceproceduree_test()asbegin setstrsql='selectidinto@eidfromtest2orderbyidlimit1,10'; insertintotestselectid,namefromtest2whereidin(eid); setstst=strsql; executestst;end;变量需要提前定义cre......
  • MySQL忘记root密码解决方案
    Linux系统-部署-运维系列导航 场景一:重置root密码mysql登录密码为password()算法加密,解密成本太高,以下为通用方案;原理:mysql提供了特殊启动方式,即跳过权限表验证,启动后,登录不需要提供密码;登录后,即可修改mysql数据库的user表,重置密码,然后刷新权限,重启mysql服务即可;注意:此时my......
  • docker桌面端安装mysql
    参考 https://www.yzktw.com.cn/post/735256.html1,搜索Images,mysql,选择合适的版本pull2,Images,中点击三角箭头,run,会弹出新建Containers弹框Containersname,随便写Ports需要写0Volumes选安装地址EnvironmentVarialbes需要加上密码MYSQL_ROOT_PASSWORD: 123456 3,运行......
  • keepalived实现MySQL MGR高可用(keepalived 2.2.7 + mysql 5.7.35)
    Linux系统-部署-运维系列导航 一、架构介绍MySQLMGR实现了MySQL服务的高可用、高扩展、高可靠,但在客户端只能同时连接一台服务实例,在master切换后,客户端无法感知并自动切换,所以需要搭配keepalived实现MySQLMGR集群在客户端的高可用。 二、架构搭建架构设计MySQLMGR一......