六、MySQL之数据定义语言(一)

news/2024/7/16 7:53:17 标签: mysql, 数据库, sql, intellij-idea, ide

在这里插入图片描述

文章目录

  • ??前言
  • ?? 库的管理
  • ??表的管理
  • ??数据类型
  • ??总结

??前言

这一节介绍MySQL中的DDL(数据定义语言),内容主要包括数据定义语言之库的管理、表的管理、数据类型以及常见的约束(下节单独介绍)等内容。

?? 库的管理

创建(create)、修改(alter)、删除(drop)

  1. 库的创建(create)

语法
create database 【if not exists】库名【character set 字符集名】;

  1. 库的修改(alter)

语法
alter database 库名 character set 字符集名;

可以更改库的字符集:
ALTER DATEBASE books CHARACTER SET gbk;

  1. 库的删除

语法
drop database 【if exists】 库名;

??表的管理

创建(create)、修改(alter)、删除(drop)

  1. 表的创建(create)??

语法
create table 【if not exists】表名(
字段名 字段类型【约束】,
字段名 字段类型【约束】,

字段名 字段类型【约束】
)

  1. 表的修改

①添加列
alter table 表名 add column 列名 类型【first | after 字段名】;
②修改列的类型或约束
alter table 表名 modify column 列名 新类型【新约束】;
③修改列名
alter table 表名 change column 旧列名 新列名 类型;
④删除列
alter table 表名 drop column 列名;
⑤修改表名
alter table 表名 rename 【to】新表名;

  1. 表的删除

语法
drop table 【if exists】表名;

  1. 表的复制

①复制表的结构
create table 表名 like 旧表;
②复制表的结构+数据
create table 表名
select 查询列表 from 旧表【where 筛选】;

??数据类型

  1. 数值型
    ①整型

类型

字节

tinyint

1

smallint

2

mediumint

3

int/integer

4

bigint

8

特点
①都可以设置无符号和有符号,默认有符号,通过unsigned设置无符号
②如果超出了范围,会报out or range 异常,插入临界值
③长度可以不指定,默认会有一个长度
长度代表显示的最大宽度,如果不够则左边用0填充,但需要搭配zerofill ,并且默认变为无符号整型

②浮点型

定点数

decimal(M,D)

浮点数

float(M,D) double(M,D)

特点
①M代表整数部位+小数部位的个数,D代表小数部位
②如果超出范围,则报out or range 异常,并且插入临界值
③M和D都可以省略,但对于定点数,M默认为10,D默认为0
④如果精度要求较高,则优先考虑使用定点数

  1. 字符型
    char 、varchar、binary、varbinary、enum、set、text、blob
    == 常用两个==:
    char:固定长度的字符,写法为char(M),最大长度不能超过M,其中M可以省略,默认为1
    varchar:可变长度的字符,写法为varchar(M),最大长度不能超过M,其中M不可以省略

3.日期型
year年
date日期
time时间
datetime日期+时间:字节8
timestamp日期+时间 :字节4 比较容易受时区、语法模式、版本的影响,更能反映当前时区的真实时间

??总结

这一节主要介绍了MySQL中的数据定义语言,其中常见的约束这一部分内容较多,将在下一节单独展开介绍,欢迎小伙伴们关注并学习!

在这里插入图片描述


http://www.niftyadmin.cn/n/1277134.html

相关文章

常见应用安全漏洞

1.注入 注入攻击漏洞,例如SQL、OS、LDAP注入。这些攻击发生在当不可信的数据作为命令或查询语句的一部分,被发送给解释器的时候,攻击者发送的恶意数据可以欺骗解释器,以执行计划外的命令或未授权的查询。 2.失效的身份认证和会话…

Glib实例学习(1)单链表

2019独角兽企业重金招聘Python工程师标准>>> 1:SList结构 typedef struct _GSList GSList;struct _GSList{gpointer data;GSList *next;}; 2: SList 原型 GSList* g_slist_append (GSList *list,gpointer data) G_GNUC_WARN_UNUSED_RESULT;GSList* g_sl…

在Python中如何随机从list中挑选一个元素

1. 引言 在本文中,我们将研究从列表中选择随机元素的不同实现方法。在日常项目中,我们经常会遇到这种情形,比如随机从多种数据增强策略中选择一种或几种来提升训练数据的多样性。 闲话少说,我们直接开始吧。 :&#x…

Thread interrupt

如果一个线程处于了阻塞状态(如线程调用了thread.sleep、thread.join、thread.wait、1.5中的condition.await、以及可中断的通道上的 I/O 操作方法后可进入阻塞状态),则在线程在检查中断标示时如果发现中断标示为true,则会在这些阻…

在Python列表中删除重复元素的几种方法,用起来真好用

一: 直接遍历列表删除 l1 [1, 1, 2, 2, 3, 3, 3, 3, 6, 6, 5, 5, 2, 2]for el in l1:if l1.count(el) > 1:l1.remove(el) print(l1)# 会漏删,因为删除一个元素后,后面的元素向前补位,导致紧跟的一个元素被跳过.二: 通过遍历索引删除 l1 [1, 1, 2, 2, 3, 3, 3, 3, 6, 6, …

Bash基础——顺序执行命令

首先,值得提一下的是,在Bash里,最小的执行单位应该是pipeline. Bash支持对pipelines进行组合,产生顺序、条件、循环等结构。每个pipeline在其自己的subshell中执行,有自己的PID. 但是为了方便,在这里介绍顺…

Gulp-ruby-sass的使用心得

安装ruby 1、安装ruby和sass 在windows下利用Gulp-ruby-sass编译sass,需要安装ruby和sass,安装过程请参考[sass安装][1],这个过程是必须的,不然在gulp里执行sass编译时没有任何变化,也不会报任何错误提示。如果你也遇到…

tongEASY

tongEASY是国内东方通的中间件。它由三层组成:通信管理模块、事务管理模块、应用开发API。 最后欢迎大家访问我的个人网站: 1024s