MySQL学习(3):SQL语句之数据定义语言:DDL

1.SQL通用语法与分类

(1)通用语法

(2)分类

2.DDL

2.1数据库操作

show DATABASES;
#查询所有数据库select DATABASE();
#查询当前数据库create DATABASE 数据库名称 [default charest 字符集] [collate 排列规则];
#default charest 字符集 是用来指定所创建的数据库使用的字符集的drop DATABASE 数据库名称;
#删除数据库use 数据库名称;
#使用指定数据库

2.2表操作

表操作是在数据库内进行的,也就是使用 use 数据库名称;进入数据库后使用的

2.2.1表的查询

show TABLES;
#查询当前数据库所有表desc 表名;
查询表结构show create table 表名;
查询指定表的建表语句

2.2.2表的创建

2.2.2.1表的数据类型

数据库中表的数据类型大致可分为3类:数值类型、字符串类型、日期时间类型

(1)数值类型

*整数类型

类型大小有符号范围无符号范围

迷你整型:

tinyint

1个字节(-2^7 ,2^7-1)(0,2^8-1)

短整型:

smallint

2个字节(-2^15 ,2^15-1)(0,2^16-1)

中整型:

mediumint

3个字节(-2^23 ,2^23-1)(0,2^24-1)

标准整型:

int

4个字节(-2^31 ,2^31-1)(0,2^32-1)

大整型:

bigint

8个字节(-2^63 ,2^63-1)(0,2^64-1)

有符号代表有负数,是默认类型;无符号代表纯正数,需要加unsigned来标识

*小数类型

类型大小有效数字默认范围(非指定)指定方法数据规范
单精度浮点:float4个字节6-7位

整数部分不超过最大值,小数部分保留2位

float/double(总长度,小数部分长度)超过有效数字范围会四舍五入
双精度浮点:double8个字节14-15位
定点型:decimal数据越大占用的存储空间越大

65位

10位有效整数,0位小数

decimal(有效数位,小数部分数位)

整数部分超出报错

小数部分超出四舍五入

有效数字:从第一个非零的数字算起的所有数字。1.24和0.00124的有效数字都是3位

decimal(5,3)就可以设定一个23.123这样的总体有效数字5位,小数位3位的数字

(2)字符串类型

类型大小描述
char0-255字符定长字符串
varchar0-65535字符

变长字符串

blob(基本不用)

二进制数据(音频视频等)

text0到2 ^ 16 - 1个字符文本数据

*在效率上来说char比varchar更好,但是char会占据固定的存储空间,而varchar会根据存储内容调整占据的空间。比如char(10)一定会占据10个字符的空间,而varchar(10)只是限定数据不超过10个字符

*字符串也是可以包含数字的

*文本text还有其他大小不同的类型

迷你文本tinytext不超过2 ^ 8 -1个字符
普通文本text不超过 2 ^ 16 - 1个字符
中型文本mediumtext不超过 2 ^ 24 - 1 个字符
长文本longtext不超过 2 ^ 32 - 1 个字符

(3)时间类型

类型大小可表示范围与格式描述
date3个字节1000-01-01到9999-12-31日期
time3个字节-838:59:59到838:59:59时间
datetime8个字节

1000-01-01 00:00:00到9999-12-31 23:59:59

日期和时间
year1个字节1901到2155年份
timestamp4个字节

1970-01-01 00:00:01到2038-01-19 03:14:07

日期和时间,时间戳
2.2.2.2创建语句
create table 表名(字段1  类型,字段2  类型,字段3  类型,
......字段n  类型
);
#除了最后一段,其他字段末尾都要以英文逗号隔开
create table jjj(
age int unsigned,
#在类型名后加上unsigned,可以限制它为非负
number int
);

2.2.3表的修改

(1)添加与删除字段

alter table 表名 add 字段名 类型;
#添加字段alter table 表名 drop 字段名;
#删除字段

(2)修改字段及类型

alter table 表名 modify 字段名 新数据类型(长度);
#修改数据类型alter table 表名 change 旧字段名 新字段名 类型(长度);
#修改字段名、数据类型

(3)修改表名

alter table 表名 rename to 新表名;

(4)删除表

drop table 表名;
#删除表truncate table 表名;
#清空表内数据,但保留表

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/37575.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[NeurIPS2021] Deep Residual Learning in Spiking Neural Networks【文献精读、翻译】

深度残差学习在脉冲神经网络中的应用 Fang W, Yu Z, Chen Y, et al. Deep residual learning in spiking neural networks[J]. Advances in Neural Information Processing Systems, 2021, 34: 21056-21069. 摘要 深度脉冲神经网络 (SNNs) 因为使用离散的二进制激活和复杂的时…

讨论stl链表

讨论链表 list迭代器失效list的模拟实现创建结点类链表迭代器完成实现代码 list与vector 链表是一个序列容器,在任意位置都可以用常数时间插入或者删除,并且可以在两个方向进行迭代。 list迭代器失效 迭代器失效指迭代器所指向的结点无效,即该…

淘宝扭蛋机小程序开发:为消费者带来新的潮玩乐趣

在当下的消费市场,潮玩消费已经成为了年轻人的新宠,预计在近几年间潮玩市场的销售额将达到千亿元!其中扭蛋机市场更是吸引了各个阶段的消费群体,在市场巨大的发展前景下,同时也吸引了众多投资者入局,市场竞…

SuperMap iDesktop

SuperMap iDesktop 介绍 SuperMap iDesktop是一款由超图公司推出的企业级插件式桌面GIS软件,它通过SuperMap iObjects .NET、桌面核心库和.NET Framework 4.0构建,集成了地图制作、空间分析、数据编辑、三维分析等多种功能于一体,为用户提供…

标准版回收站的商品怎么删除?

管理后台/维护/数据维护/清除数据 里面就可以清空回收站的商品

Flink作业执行之 4.JobGraph

Flink作业执行之 4.JobGraph 1. 入口 前文了解了由Transformation到StreamGraph的过程,StreamGraph即作业的逻辑拓扑结构。 生成逻辑结构后,接下来的操作往往是对逻辑结构的优化。在很多组件中都是这样的处理,如hive、spark等都会执行“逻辑…

os实训课程模拟考试(选择题复习)

目录 一、操作系统的基本功能和设计目标 (1)基础知识 (2)题目与答案 1、操作系统是一组 B (单选) 2、以下哪项不是操作系统关心的主要问题?D (单选) 3、下列关于…

使用SpringBoot整合filter

SpringBoot整合filter,和整合servlet类似,也有两种玩儿法 1、创建一个SpringBoot工程,在工程中创建一个filter过滤器,然后用注解WebFilter配置拦截的映射 2、启动类还是使用ServletComponentScan注解来扫描拦截器注解WebFilter 另…

Windows系统开启自带虚拟机功能Hyper-V

前言 最近有小伙伴咨询:Windows系统上有自带的虚拟机软件吗? 答案肯定是有的。它就是Hyper-V,但很多小伙伴都不知道怎么打开这个功能。 今天小白就带大家来看看如何正确打开这个Windows自带的虚拟机功能Hyper-V。 开始之前,你…

基于Spring Boot与Vue的智能房产匹配平台+文档

博主介绍:✌在职Java研发工程师、专注于程序设计、源码分享、技术交流、专注于Java技术领域和毕业设计✌ 温馨提示:文末有 CSDN 平台官方提供的老师 Wechat / QQ 名片 :) Java精品实战案例《700套》 2025最新毕业设计选题推荐:最热的500个选题…

学会python——在Excel中生成图表数据(python实例十五)

目录 1.认识Python 2.环境与工具 2.1 python环境 2.2 Visual Studio Code编译 3.生成表格数据 3.1 代码构思 3.2 代码示例 4.绘制图表 4.1 代码构思 4.2 代码示例 5.总结 1.认识Python Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。 P…

Shell 脚本编程保姆级教程(下)

七、Shell 流程控制 7.1 if #!/bin/bash num1100 if test $[num1] 100 thenecho num1 是 100 fi 7.2 if else #!/bin/bash num1100 num2100 if test $[num1] -eq $[num2] thenecho 两个数相等! elseecho 两个数不相等! fi 7.3 if else-if else #!/…

电影APP——项目建议书参考

项目建议书 1. 前言1.1 实现目标1.2 项目应用范围1.3 项目名称 2. 概述2.1 国内外发展综述2.2 拟解决的问题2.2.1 业务问题2.2.2 技术需求 2.3 系统环境需求2.3.1 网络需求描述2.3.2 业务需求描述2.3.3 运行环境/用户描述 2.4 功能建议2.4.1应用场景描述2.4.2功能划分/功能模型…

性能之巅的巴比达内网穿透访问单位的web管理系统

在这个数字化飞速发展的时代,作为一名IT部门的小主管,我经常面临着一项挑战:如何在外网环境下高效、安全地访问我们单位内部部署的Web管理系统。这不仅仅是关乎我个人的工作效率,更是影响到整个团队能否快速响应市场需求的关键。直…

650V 1200V 碳化硅MOS TO247 封装 内阻30毫欧 40 80毫欧

650V 1200V 碳化硅MOS TO247 封装 内阻30毫欧 40 80毫欧

LangChain E-Mails with LLM

题意:通过LangChain使用大型语言模型(LLM)处理电子邮件 问题背景: I am quite new to LangChain and Python as im mainly doing C# but i am interested in using AI on my own data. So i wrote some python code using langch…

如何安装和卸载软件?

如何安装和卸载软件? 💻 如何安装和卸载软件?——默语的详细教程摘要引言正文内容🖥️ 在Windows上安装和卸载软件安装软件卸载软件 🍏 在Mac上安装和卸载软件安装软件卸载软件 🤔 QA环节📝 表格…

QT QThread 线程类的使用及示例

QThread 是 Qt 框架提供的一个用于处理多线程的类,它允许开发者编写具有并发功能的应用程序,提高程序的响应速度、执行效率和用户体验。 在操作系统中,线程是进程内的执行单元,拥有独立的执行路径。每个线程有自己独立的栈空间&a…

从零开始学Spring Boot系列-集成Spring Security实现用户认证与授权

在Web应用程序中,安全性是一个至关重要的方面。Spring Security是Spring框架的一个子项目,用于提供安全访问控制的功能。通过集成Spring Security,我们可以轻松实现用户认证、授权、加密、会话管理等安全功能。本篇文章将指导大家从零开始&am…