Mysql 数据库(二)——数据库基础

article/2025/10/14 21:47:38

文章目录

  • 一、SQL 语句分类
    • 1.DQL(数据查询语言)
    • 2.DML(数据操纵语言)
    • 3.DDL(数据定义语言)
    • 4.DCL(数据控制语言)
    • 5.TCL(事务处理语言)
  • 二、数据库的分类
    • 1.关系型数据库
    • 2.非关系型数据库
    • 3.表的理解
  • 三、数据库操作
    • 1.显示当前的数据库
    • 2.创建数据库
    • 3.选中数据库/使用数据库
    • 4.删除数据库
    • 4.1语法
  • 四、常用数据类型
    • 1.数值类型
    • 2.字符串类型
    • 3.日期类型
  • 五、表的操作
    • 1.查看表结构
    • 2.创建表
    • 3.删除表
  • 六、建表小练习
  • 未完待续…

接上篇 Mysql 数据库(一)—— 初识 Mysql

本章内容介绍大纲


在这里插入图片描述


一、SQL 语句分类


  SQL语句有很多,我们最好分门别类,这样容易记忆…


1.DQL(数据查询语言)


  数据查询语言(Data Query Language, DQL)是SQL语言中,负责进行数据查询而不会对数据本身进行修改的语句,这是最基本的SQL语句。

我们在 看到 select … 这样的 sql 语句,都是数据查询语句,凡是带有 select 关键字的 SQL 语句都是 DQL 语句


2.DML(数据操纵语言)


  数据操纵语言(Data Manipulation Language, DML)是SQL语言中,负责对数据库对象运行数据访问工作的指令集,以INSERT、UPDATE、DELETE三种指令为核心,分别代表插入、更新与删除。


凡是带有INSERT、UPDATE、DELETE 关键字的语句都是 DML

insert —— 插入,等同于增
update —— 更新,等同修改
delete —— 删除

这个主要操作的是表中的数据


3.DDL(数据定义语言)


  数据定义语言 (Data Definition Language, DDL) 是SQL语言集中,负责数据结构定义与数据库对象定义的语言,由creat、alter 与 drop 三个语法所组成. DDL 主要操作的是 表的结构 不是表中的数据


凡是带有 create(增)、alter (改)、drop (删) 关键字的语句都是 DDL

create —— 新建、等同于增
drop —— 删除
alter —— 修改

这个增删改与 DML 有所不同,这个主要是对表结构进行操作.


4.DCL(数据控制语言)


  数据控制语言 (Data Control Language) 在SQL语言中,是一种可对数据访问权进行控制的指令,它可以控制特定用户账户对数据表、查看表、预存程序、用户自定义函数等数据库对象的控制权。对数据的权限进行控制的语言.


例如:

请求授权—— grant
撤销授权 —— revoke


5.TCL(事务处理语言)


  这里的TCL可不是王牌电视,事务处理语言(Transaction Control Language),它的语句能确保被DML语句影响的表的所有行及时得以更新。是一种事务控制语言。


TCL 主要包括

事务提交 —— commit
事务回滚 —— rollback


  现在我们还没学到,到我们在后面就会接触到了。


二、数据库的分类

在这里插入图片描述


  在上节课中 我们了解了 几种数据库软件(mysql、sql server、Oracle …),我们来看一看数据库的分类


1.关系型数据库


Mysql、Sql server 、Oracle 、SqLite 属于 关系型数据库

把数据按照 的形式来进行组织(类似于Excle这种形式的).
关系型数据库能够对数据进行更严格的校验,带来更好的数据的完整性.


2.非关系型数据库


Redis 、 HBase 、MongoDB …属于 非关系型数据库

把数据按照 文档 的形式来进行组织,文档和文档之间的差别可以较大.
更灵活的组织数据,效率更高,更容易在分布式环境下使用.

那么什么是表呢?


3.表的理解


数据库中最基本的结构是表—— table

什么是表 table ? 为什么用 表 table 进行存储数据呢?

我们给大家看一下什么是表,相信 EXcel 大家都用过


在这里插入图片描述

这样的结构 就是一个简单的表,表是组织数据的一种形式


数据库中是以 表格的形式来表示数据的,因为 表格比较直观.


任何 表 都有行和列


行(row): 被称为数据/ 记录

列 (column): 被称为字段

在这里插入图片描述


  在这个表中 列的数据就表示字段,有 姓名字段、性别字段、年龄字段,每一行的数据表示记录.


了解一下,每个字段都有 字段名、数据类型、约束条件等属性.


字段名: 只是一个普通的名字,见名知意就行了.

数据类型: 字符串类型,数字、日期等类型,在后面我们会详细介绍

约束:约束也有很多,其中有一个叫做唯一性约束,这种约束添加后,该字段的数据不能重复.


那我们怎么查看 某个数据库中的 表呢?


1.查看我们有哪些数据库
在这里插入图片描述

2.选中我们想要查看的数据库
在这里插入图片描述

3.查看数据库中的表
在这里插入图片描述


三、数据库操作


1.显示当前的数据库


mysql> show databases;

在这里插入图片描述

2.创建数据库


mysql> create database [数据库名]

在这里插入图片描述
在这里插入图片描述
  展示数据库与 创建数据库 在上一节课中我们已经具体的讲过了,我们重点来看 删除数据库


3.选中数据库/使用数据库


use  [ 数据库名 ]

  要想对数据库进行更具体的操作 (建表、查询、…)就需要先确定是针对那个数据库进行的.

在这里插入图片描述

例如: 我们在查询完数据库之后,希望选中 java100 这个数据库.

使用use java100;
在这里插入图片描述
  出现 Database changed 则选中成功.当前的数据库已经被选中,后续的操作都是针对这个数据库来展开的.


4.删除数据库


4.1语法


 drop database [数据库名];

在这里插入图片描述

说明:

  数据库删除后,内部看不到对应的数据库,里边的表和数据全部被删除.


我们对这个数据库进行简单的删除操作…

我们在这个数据库中新建了一个 rain7 的数据库


在这里插入图片描述

然后我们输入

drop database rain7 ;

进行删库操作

在这里插入图片描述

再次查看数据库

在这里插入图片描述
rain7 的数据库 已经成功被删去了…

在这里 我们希望大家牢牢记住


   一旦删除数据库,这里的 数据通过常规的手段就找不回来了!!!所以删除数据库是一个非常危险的操作!!~~

  以后在工作中,无论如何都不要使用 drop database 操作,尤其是针对线上环境~


四、常用数据类型


1.数值类型


分为整形 与 浮点型

在这里插入图片描述

扩展资料

数值类型可以指定为无符号(unsigned),表示不取负数。

对于整型类型的范围:


1.有符号范围:-2 ^ (类型字节数 * 8-1)到2 ^ (类型字节数 * 8-1)-1,如int是4字节,就是-2^ 31 到 2^31-1

2.无符号范围:0到2 ^ (类型字节数*8)-1,如int就是2 ^ 32-1


  尽量不使用unsigned,对于int类型可能存放不下的数据,int unsigned同样可能存放不下,与其如此,还不如设计时,将int类型提升为bigint类型。


bit [ M () ]

  bit 就表示一个二进制的数据,在方括号里我们可以指定该数据占多少个bit 位,M()就来指定有多少位,如果不指定的话,默认就为 1.


数据类型对应Java类型
tinyintbyte
smallintshort
intInteger
bigintlong
float(M,D)float
double(M,D)double
decimal(M,D)bigdecimal

float (M,D)的含义

float (3,1)—— 有效数字是 3 位,小数点后保留一位.

95.5 合法
25.1 合法
101.2 不合法


decimal 在之前我们没有接触过


  Java中的 float 和 double 都是有问题的,不能精确表示一些数据 ~~ 遵循 IEEE754 标准,受限于浮点数在内存中的表示.

  后来Java为了解决这个问题,就有了 bigdecimal,内部使用其他方式来存储表示浮点数,就能够做到更精确的表示~~

  所以在 sql 中也有一个 decimal 来对应Java中的 bigdecimal.


2.字符串类型


在这里插入图片描述


varchar (size) 在() 中我们可以规定 字符串的大小,具体是字符的个数~~

blob 针对的类型主要是 二进制形式的文本数据


3.日期类型

在这里插入图片描述

  现在我们写代码优先使用 datetime 这个时间戳,因为 表示的范围更大


我们如何使用时间类型?

在这里插入图片描述

五、表的操作


需要操作数据库中的表时,需要先使用该数据库


use db_test;


1.查看表结构


desc 表名;


我们来使用一下该条命令语句


1.选中数据库,查看该数据库中的所有 table
在这里插入图片描述

2.查看表结构
在这里插入图片描述


表结构的具体解释

在这里插入图片描述


2.创建表


create table table_name(字段 类型,字段 类型 , …);


语法:

在这里插入图片描述

与其他编程语言 定义的不一样,在MySQL中 类型放在 字段的后面.


java 中可以用 // 表示注释
mysql中可以用 comment 表示注释说明,也可以用 - - 表示注释~


我们可以操作一下,我们想要添加一个工作人员表,以下图为例,同样在java100 的数据库中添加该表

在这里插入图片描述

1.查找数据库,选中Java100;
在这里插入图片描述

2.创建一个 工作人员表,要求有姓名,年龄,性别等属性~
在这里插入图片描述

3.查看表结构
在这里插入图片描述



3.删除表


drop table table_name;

在这里插入图片描述

我们再次来练习,删除我们在之前操作建立的 workers 这个表

1.删除 worker 这个表
在这里插入图片描述

2.查看删除成功
在这里插入图片描述
此时 workers 已经不存在.


六、建表小练习


给大家一个小练习,来熟悉 MySQL的基本操作吧


有一个商店的数据,记录客户及购物情况,有以下三个表组成:


商品goods ( 商品编号 goods_id,商品名 goods_name , 单价 unitprice , 商品类别 category , 供应商 provider )


客户 customer ( 客户号 customer_id , 姓名 name ,住址 address ,邮箱email,性别 sex ,身份证 card_id )


购买 purchase ( 购买订单号 order_id , 客户号 customer_id ,商品号 goods_id ,购买数量 nums ).



  数据库还有表的 增删查改 操作,我们会在下一节中集中介绍.


  好了今天的知识就分享到这里,希望大家多多练习,熟练掌握,感谢大家的欣赏与关注!!


  下一篇~ Mysql 数据库(三)—— 表的增删查改(CRUD) 敬请期待~~



谢谢欣赏!



未完待续…


http://chatgpt.dhexx.cn/article/mH9Qe2Yb.shtml

相关文章

达梦数据库基础-安装篇(Linux)

目录 前言 安装前准备 安装银河麒麟V10 SSH工具 环境配置 配置系统账户 获取达梦安装包 创建安装目录 ​编辑 安装指引 前言 近来在项目上接触的达梦数据库产品越来越多,不过之前接触,也仅仅是在做系统开发的时候,连上数据库后就开始…

数据库基础:基本概念

数据库、数据管理和数据管理系统 数据管理,是指对数据进行分类、组织、编码、存储、检索和维护。 数据库,存储数据的容器。 数据管理系统,DBMS(Database Management System),是管理数据库的软件。数据库管理系统是数据库系统的…

GaussDB高斯数据库(数据库基础知识)

数据库管理工作就是对数据库管理系统进行管理和维护的工作。 核心目标:稳定性,安全性,数据一致性,系统的高性能 数据库对象: 制定命名规范 灾难恢复: 恢复时间目标(RTO)&#xf…

数据库基础学习(思维导图)

在复习数据库时画的一些思维导图,自己觉得还不错,发出来希望帮助大家复习。 如有问题,,,欢迎指正!! 个人网站原文链接!!! 主要教材:数据库系统教程(第三版,施伯乐) 辅助教材:数据库系统概论(第五版,王珊) 其他参考:数据库系统教程习题解答与实验指导(…

一、数据库基础

文章目录 一、数据库基础知识和基本概念1、数据库基础知识2、数据库基本述语3、数据库系统的组成4、主流数据库 二、SQLServer 2012(1)服务器名称(2)身份验证(3)如何开启SQL Server服务?&#x…

MySQL数据库基础命令

1.连接数据库 在目录下输入cmd 输入命令: mysql -h 127.0.0.1 -u root -p 输入密码进入数据库 2.显示系统所有数据库名称 输入命令: show database; 3.新建数据库oo 命令: create database oo; 建成后查看: 4.使…

MySQL数据库基础

文章目录 1.数据库的操作1.1显示当前的数据库1.2创建数据库1.3使用数据库(选中数据库)1.4删除数据库 2.常用的数据类型2.1数值类型2.2字符串类型2.3日期类型 3表的操作3.1创建表3.2查看表结构3.3显示表3.4删除表 1.数据库的操作 1.1显示当前的数据库 s…

数据库基础语句

1.SQL DML 和 DDL 可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL)。 1.1 查询和更新指令构成了 SQL 的 DML 部分: SELECT - 从数据库表中获取数据 UPDATE - 更新数据库表中的数据 DELETE - 从数据库表中删除数据 INSERT INTO - 向…

数据库基础命令

目录 环境 1、连接数据库 2、显示系统中所有数据库 3、新建数据库 4、使用数据库创建表 5、添加数据 6、删除数据 7、修改数据 8、查询数据 9、order by用法 10、limit用法 11、union select用法 12、union select 结合 information_schema数据库 环境 phpstudy20…

数据库基础(超详细版)

目录 简介: 三大范式: sql语句分类: DDL操作数据库: DML操作: DCL DQL 模糊查询 字段控制查询 排序 聚合函数 分组查询 HAVING子句 limit关键字和分页查询 简介: 数据库(DataBase&a…

Ubuntu升级后DNS不好用

服务器Ubuntu16升级到Ubuntu18后,DNS不好用,解决办法。 我使用的是三丰云的免费云服务器。这个服务器用了有一段时间了,挺稳定的。暂时还没有出现过问题。感兴趣的可以试一试。 感觉虽然系统升级到了Ubuntu18,但是DNS的配置方法并…

常用的免费好用的DNS有哪些?

阿酷TONY 原创文章 关键词:免费dns、百度dns、阿里dns、114 dns 、Google DNS 2019-1-24 DNS(Domain Name Server,域名服务器)是进行域名(domain name)和与之相对应的IP地址 (IP address)转换的服务器。DNS中保存了一张域名(doma…

DNS

1.介绍: 域名系统 (Domain Name System),是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数据串。 DNS由解析器以及域名…

优秀公共DNS服务器推荐

选择最优秀的 DNS 服务器,不仅为你提供安全的上网环境,而且还能加速你的网速。目前互联网上提供了大量匿名、公共、免费的 DNS 服务器,因此挑选适合自己的最佳选项可能并不简单。国外科技媒体 BGR 分享了一些主流的 DNS 服务器并提供了一些选…

国内外优秀公共DNS测评及推荐

DNS在平时上网中扮演重要角色,如果不注意DNS的话,可能会导致网速慢、弹窗广告、网址打不开、打开不是自己想要的网站、劫持等一系列问题。针对DNS的问题,今天我们就来总结一下,看看哪个DNS服务器最好用!注意&#xff1…

最好用的DNS地址

2019独角兽企业重金招聘Python工程师标准>>> DNS是 Domain Name System 的缩写,它是由解析器和域名服务器组成的。简单说就是通过DNS服务,将域名信息翻译成IP地址然后连通。 今天将目前国内主流的公共DNS地址、全国各地中国电信和联通DNS服务…

成都最稳定的dns服务器地址,成都首选DNS服务器地址

成都首选DNS服务器地址 内容精选 换一换 华为云帮助中心,为用户提供产品简介、价格说明、购买指南、用户指南、API参考、最佳实践、常见问题、视频帮助等技术文档,帮助您快速上手使用华为云服务。 系统提示无法下载脚本或使用Linux系统方式二安装Agent时失败。原因1:DNS无法…

dns服务器的设置

1.为什么设置本机的dns服务器 计算机在访问网站的时候一般通过ip地址访问,但是ip不是很好记,于是出现了域名,而dns服务器就是将域名与ip关联起来。 所以在每次通过域名第一次访问任何一个网站的时候都是要先询问dns服务器该域名对应的ip地址…

监控系统首选DNS服务器,监控windows DNS服务器

监控windows DNS服务器 内容精选 换一换 主机监控分为基础监控、操作系统监控、进程监控。基础监控:ECS/BMS自动上报的监控指标。操作系统监控:通过在ECS或BMS中安装Agent插件,为用户提供服务器的系统级、主动式、细颗粒度监控服务。进程监控…

有哪些好用的网关和dns?

大家可能对于DNS并不是很了解,简单来说就是进行域名解析的服务器,且DNS和网关可以是中继服务,一致应该是用的路由器,路由器同时提供中转这两种服务。会把要高提交到更高一层的路由和DNS服务器,来提供服务的&#xff0c…