【初识数据库】进入数据库的大门+数据库基本操作

news2024/10/7 8:20:11

前言:
大家好,我是良辰丫🍓🍓🍓,这个专栏我将带领大家去探索数据库的汪洋大海,我主要使用的数据库软件是MySQL,数据库软件大同小异,嘿嘿嘿,废话不多说,坐好车,准备发车了,let’s gogogo。🚀🚀🚀

🧑个人主页:良辰针不戳
📖所属专栏:数据库
🍎励志语句:生活也许会让我们遍体鳞伤,但最终这些伤口会成为我们一辈子的财富。
💦期待大家三连,关注,点赞,收藏。
💌作者能力有限,可能也会出错,欢迎大家指正。
💞愿与君为伴,共探Java汪洋大海。


目录

  • 1、走进数据库
    • 1.1 为什么要使用数据库
    • 1.2 内存与外存
  • 2、数据库的基本操作
    • 2.1 显示数据库
    • 2.2 创建数据库
    • 2.3 使用数据库
    • 2.4 删除数据库
  • 3、常用的数据库类型
    • 3.1 数值类型
    • 3.2 字符串类型
    • 3.3 日期类型
  • 4、表的的基本操作
    • 4.1 创建表
    • 4.2 查看表
    • 4.3 查看表结构
    • 4.4 删除表


1、走进数据库

数据库,顾名思义是存放数据的一个工具,它可以去管理我们存储的数据,可以对数据进行增删查改。
数据库中的数据一般存储在硬盘上,具有长期性(持久化存储)。

1.1 为什么要使用数据库

文件就可以存储数据,为什么还要弄一个数据库呢?

  • 文件需要考虑安全问题。
  • 文件不利于数据查询和管理。
  • 文件不利于存储海量数据。
  • 文件在程序中控制不方便。

因此呢,一些大佬研究出数据库,它能更有效的管理数据。数据库可以提供远程服务,即通过远程连接来使用数据库。通过简单的命令行就可以对数据库进行增删查改等一系列操作。我们上述提到是硬盘也可以描述为外存,接下来我们简单谈一下内存和外存的区别。

1.2 内存与外存

  • 内存空间比较小,目前常见的有8G,16G,也是我们口中说的运行内存,外存空间比较大,目前计算机经常用的外存为512G,1T。这些都是专业术语,也许和大家认知的稍有不同,希望大家可以用心去掌握这些东西。
  • 内存访问速度快,外存访问速度慢,大概要差3-4个数量级。这里的外存一般指的是机械硬盘,受限于机械硬盘的物理结构,机械硬盘的存储速度,好多年没有发展了。SSD固态硬盘访问,访问速度很快,比机械硬盘快多了,最牛的SSD固态硬盘访问速度快赶上最垃圾的内存了。
  • 内存成本高,外存成本低。
  • 内存中的数据,断电后会消失;外存中的数据,断电后还在。

2、数据库的基本操作

注意:
数据库是不区分大小写的,我个人比较喜欢小写,看大家的习惯。

2.1 显示数据库

databases为复数,而且数据库以分号结尾,可能一些别的数据库语言不是以分号结尾,但是写上分号一般不会错,记得要写分号哦。

show databases;

在这里插入图片描述

2.2 创建数据库

create database 数据库名字;

在这里插入图片描述

数据库的名字,可以随便起,但是尽量别起与关键字相同的名字,如果想起与关键字相同的名字可以用反引号引起来。咱们了解这一点就行,一般不要用关键字作为数据库名字。

在这里插入图片描述

2.3 使用数据库

创建一个数据库后,要想在这个数据库里面创建各个表,需要进行使用数据库操作。

use 数据库名字;

在这里插入图片描述

上面截图操作就相当于进入名字叫student的数据库,可以进行一系列的操作。

2.4 删除数据库

这个操作在公司里一般禁用,会造成不可逆的结果,当你在维护一组数据的时候,进行了删除操作后,短短几秒,却可以造成巨大的损失。

drop database 数据库名字;

在这里插入图片描述

3、常用的数据库类型

只是总结出来让大家看,不用专门记忆,用的多了自然会了。很多数据库中的类型和java中的对应,但是拼写却不一样,两者对比是为了让大家更深刻的了解数据库类型。

3.1 数值类型

数据类型大小对应的java类型
bit[ (M) ]M指定位数,默认为1boolean
tinyint1字节Byte
smallint2字节Short
int4字节Integer
bigint8字节Long
float(M,D)M指定长度,D指定小数位数Float
double(M,D)M指定长度,D指定小数位数Double
decimal(M,D)M/D最大值+2BigDecimal
numeric(M,D)M/D最大值+2BigDecimal

3.2 字符串类型

数据类型大小对应的java类型
varchar(size)0~65535字节String
text0~65535字节String
mediumtext0~16777215字节String
blob0~65535字节byte[]

3.3 日期类型

数据类型大小对应的java类型
datetime8字节java.util.Date、java.sql.Timestamp
timestamp4字节java.util.Date、java.sql.Timestamp

4、表的的基本操作

4.1 创建表

create table 表名 (列名 类型,列名 类型......);

在这里插入图片描述

上面一个简单的表就创好了,其中的属性有姓名,学号,教室号。

4.2 查看表

show tables;

在这里插入图片描述

创建的表的列的数目指定了,但是行没有指定。

4.3 查看表结构

desc 表名;

在这里插入图片描述

  • Field这一列表示字段,表示该表中有哪些属性。
  • type表示属性的数据类型。
  • Null这一列表示是否允许为空,yes表示允许为空。
  • key表示索引类型(后续了解)
  • default表示默认值,某个属性没有赋初值,那么它默认为NULL。
  • extra表示扩充信息,额外信息(后续了解)

4.4 删除表

删除表操作和删除数据库操作大同小异,灵活掌握哦。

在这里插入图片描述

后序:
数据库入门知识就讲到这里了,还有一个数据库注释没有讲到,也不常用,因为数据库一旦执行命令,关闭后,它以前的操作也就看不到了。希望这篇小小的文章可以给大家带来帮助。💕💕💕

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

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

相关文章

分布式事务Seata学习笔记

目录 1.Seata 是什么 2. Seata快速开始 2.1 Seata Server(TC)环境搭建 db存储模式Nacos(注册&配置中心)部署 3. Seata Client快速开始 4.demo源码:springcloudAlibaba: Alibaba微服务学习demo 1.Seata 是什么 Seata 是一款开源的分布式事务…

神级程序员上网都在看什么?

同样都是上网,为什么大神总能在最短时间内汲取最有效的信息呢? 不怕大神不上网,就怕大神上网比你精!其实,你与大神的区别都藏在细节中。 这些神级网站都是我偷看他们电脑抄来的(误),…

超链接(还称热连接)标签

<!DOCTYPE html> <html> <head> <meta charset"utf-8"> <title>超链接(还称热连接)</title> </head> <body> <!-- 超链接的特点&#xff1a; 1、有…

Python内置函数

5.6 Python内置函数 Python自带的所有内置函数如下&#xff1a; Python函数 以上为Python3.10中所有的内置函数&#xff0c;其中绝大部分在前面的学习当中都已经接触过了。这里在补充介绍下没有提到或学习到的函数。 5.6.1 callable(object) 描述 如果参数 object 是可调…

Java面试题,mysql相关基础问题(全是自己的总结,如有不对,敬请斧正)

mysql相关基础问题一、mysql中int类型单引号问题二、静态SQL与动态SQL1. 静态SQL2. 动态SQL3. 动态SQL与静态SQL的区别与联系一、mysql中int类型单引号问题 今天写mysql的时候发现了一个问题&#xff0c;在查询的时候不小心把int类型的id加上引号查询了&#xff0c;但是也能查…

Day08 C++STL入门基础知识五——vector容器(下) 插入删除-数据存取-交换容器-预留空间【全面深度剖析+例题代码展示】

More haste, less speed. 欲速则不达 文章目录1. 承接上文2. 插入操作2.1 函数原型(总括)2.2 尾插尾删2.2.1 操作2.2.2 代码展示2.2.3 测试结果2.3 迭代器插入2.3.1 操作2.3.2 代码展示2.3.3 测试结果2.4 think小思考2.4.1 小疑问2.4.2 思路2.4.3 代码展示2.4.4 测试结果3. 删除…

数据结构---堆

堆 定义 基本操作 建堆 堆排序 优先队列 一、堆的定义&#xff1a; 堆必须是一个完全二叉树 还得满足堆序性 什么是完全二叉树呢&#xff1f; 完全二叉树只允许最后一行不为满 且最后一行必须从左到右排序 最后一行元素之间不可有间隔&#xff0c;中间不可有空缺 如下几棵树…

CSS基础学习

HTMLCSSJavaScript 结构表现交互 学习内容&#xff1a; CSS是什么CSS怎么用&#xff08;快速入门&#xff09;CSS选择器&#xff08;重点难点&#xff09;美化网页&#xff08;文字&#xff0c;阴影&#xff0c;超链接&#xff0c;列表&#xff0c;渐变…&#xff09;盒子模型…

基于电压型磁链观测器的异步电机矢量控制学习

导读&#xff1a;本期主要介绍电压型磁链观测器&#xff08;voltage flux observer&#xff09;在静止坐标系下的表现形式&#xff0c;应用在异步电机矢量控制系统中。如需要文中的仿真模型&#xff0c;关注微信公众号&#xff1a;浅谈电机控制&#xff0c;获取。一、引言磁链估…

万字长文--详解Node.js(快速入门)

Node.js基础与扩展Node.js1、初识Node.js与内置模块1.1 Node.js初识1.2 fs文件系统模块1.3 path路径模块1.4 http模块2、模块化2.1 模块化的基本概念2.2 Node.js中模块化2.3 npm与包2.4 模块的加载机制3、Express3.1 初识Express3.2 Express路由3.3 Express中间件3.4 使用Expre…

LeetCode刷题复盘笔记—一文搞懂贪心算法之45. 跳跃游戏 II问题(贪心算法系列第五篇)

今日主要总结一下可以使用贪心算法解决的一道题目&#xff0c;45. 跳跃游戏 II 题目&#xff1a;45. 跳跃游戏 II Leetcode题目地址 题目描述&#xff1a; 给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向前跳转的最大长度…

论文投稿指南——中文核心期刊推荐(铁路运输)

【前言】 &#x1f680; 想发论文怎么办&#xff1f;手把手教你论文如何投稿&#xff01;那么&#xff0c;首先要搞懂投稿目标——论文期刊 &#x1f384; 在期刊论文的分布中&#xff0c;存在一种普遍现象&#xff1a;即对于某一特定的学科或专业来说&#xff0c;少数期刊所含…

Windows卸载与清除工具“ Geek 与 CCleaner ” (带你快速了解)

&#x1f4dc; “作者 久绊A” 专注记录自己所整理的Java、web、sql等&#xff0c;IT技术干货、学习经验、面试资料、刷题记录&#xff0c;以及遇到的问题和解决方案&#xff0c;记录自己成长的点滴。 &#x1f341; 操作系统【带你快速了解】对于电脑来说&#xff0c;如果说…

什么是闭包,Python闭包

闭包&#xff0c;又称闭包函数或者闭合函数&#xff0c;其实和前面讲的嵌套函数类似&#xff0c;不同之处在于&#xff0c;闭包中外部函数返回的不是一个具体的值&#xff0c;而是一个函数。一般情况下&#xff0c;返回的函数会赋值给一个变量&#xff0c;这个变量可以在后面被…

剑指 Offer 第5天、第6天

目录 剑指 Offer 04. 二维数组中的查找 剑指 Offer 50. 第一个只出现一次的字符 剑指 Offer 11. 旋转数组的最小数字 剑指 Offer 32 - I. 从上到下打印二叉树 剑指 Offer 32 - II. 从上到下打印二叉树 II 剑指 Offer 32 - III. 从上到下打印二叉树 III 剑指 Offer 04. 二…

Java线程池应用实例

线程池的学习基本概念好处应用场景ThreadPoolExecutor实例理解&#xff1a;执行流程自定义线程池4大核心参数测试demo结论&#xff1a;ExecutorService常用方法思考获取ExecutorService代码示例ScheduleExecutorService常用获取方式如下ScheduledExecutorService常用方法如下:代…

Linux | 一文带你真正搞懂Linux中的权限问题

在Linux下你有多少权限呢❓一、权限的基本概念二、Linux上的用户分类2.1 超级用户与普通用户2.2 用户之间的切换2.3 文件访问者的分类2.4 用户与访问者之间的联系三、文件属性与访问权限3.1 Linux下的文件类型&#xff08;1&#xff09;文件的八种类型&#xff08;2&#xff09…

单机Eureka构建步骤

目录 一、Eureka基础知识 &#xff08;一&#xff09;什么是服务治理 &#xff08;二&#xff09;什么是服务注册 &#xff08;三&#xff09;Eureka两组件 二、单机Eureka构建步骤 &#xff08;一&#xff09;IDEA生成eurekaServer端服务注册中心 &#xff08;二&#…

JavaWeb好用的工具、快捷键以及简单语法

一、VSCode ! tab生成一组默认页面模板lorem tab自动的生成一段随机的单词列模式编辑&#xff0c;将光标放在某个位置&#xff0c;然后按住alt&#xff0c;通过鼠标左键点击&#xff0c;就能选中多个位置一起修改/添加div.类名 tab可以直接创建一个类名为自己设定的块级元素…

前端布局神器display:flex

Flexbox&#xff0c;一种CSS3的布局模式&#xff0c;也叫做弹性盒子模型&#xff0c;用来为盒装模型提供最大的灵活性。首先举一个栗子&#xff0c;之前我们是这样实现一个div盒子水平垂直居中的。在知道对象高宽的情况下&#xff0c;对居中元素绝对百分比定位&#xff0c;然后…