MySQl数据库第五课 --------在SQl的简单命令--------学习学习

news2024/9/22 3:42:33

作者前言

 欢迎小可爱们前来借鉴我的gtiee秦老大大 (qin-laoda) - Gitee.com

————————————————————————————

目录

数据库的简单介绍
        1.数据储存
        2.数据库类型
                (1).关系型数据库
                 (2).非关系型数据库
        3.数据类型
        4.约束
        5.SQL

————————————————————————————

作者小废话

        在前面几章的博客中我简单介绍了linux的简单命令,这些命令可以让我们在终端中进行简单的操作,如修改文件 创建文件夹、文件、复制文件或者文件夹  。移动文件或者文件夹,文件名搜素、文件内容搜素  文件的打包和压缩(包括解压)、权限的赋予、管理员权限的获取、用户的查看,还有一些下载mysql的命令等,下面我们就将步入数据库的环境中进行操作

插播小知识

1.在进入/etc/my.cnf中不要设计mysql免密码登入,这样可能会让我们无法链接图形化界面

数据库的简单介绍

数据储存

     从远古时期的结绳记事,一直到现在的现代化数据储存。数据在日常生活中,一直都是是非重要的 存在。小到买完早餐的记账,大到战争时期的数据收集与整理。即使是现在的机器学习或是AI ,都是需 要海量的数据作为运算的基底

日常生活中,我们看京东和淘宝,数据大都是以这样的形式展现,图文并茂。这是方便客户观看商品的 特点
作为一名合格的程序员,从数据库查看数据是最基本的操作,通过 SQL 语句,调出满足逻辑的数据, 供自己和同事使用。

 数据库本身只是一种文件

我们可以看看mysql是怎样的一个样子

 可以看到mysql文件里面的布局

 当我们进入mysql环境中查看里面的库(可以理解为数据库)显示出来的就是库的名称

Linux 的终端里,我们可以在 /var/lib/mysql 中找到对应的数据目录。同时也可以在数据库中找到对 应的库名。对应到具体的表中,数据的展现形式同Excel 文件十分相似
1.选择一个库进入,查看表 的数量

2. 选择一个表格进入,查看表的结构,

 3.查看表的内容

 数据库类型

    1.关系型数据库:

         数据库中,允许数据之间的关联。即为把数据放入表格中,这些表格可以相互关联。核心 是其 结构 化的查询语言 (SQL )。其中 oracle mysql sqlite 作为关系型数据库的典型,被大规模使用。为了应 对不同的场景和计算要求,不同的企业也会根据自己的需求,优化并制造自己的数据库,例如便于大数 据计算的hive ,阿里云的泛用型数据库 ADB
      MySQL
       优点:免费。MySQL支持多种操作系统,使用场景广泛,能够被绝大多数图形化界面接受。使用标准的 SQL 语言形式。可以运行于多个系统上,并且支持多种语言。
关系型数据库就是 可以展现在Excel中的数据库  
   2.非关系型数据库:
数据 (不能简单展示在Excel 中的数据库)。非关系型数据库也被解释为 NoSQL NoSQL 数据库虽然种类繁 多,但共同的特点都是去掉关系数据库的关系型特性。数据之间无关系,这样就非常容易扩展。最长使 用的非关系型数据库有Redis和 MongoDB 。数据的表现形式也不同于关系型数据库,键值对、列、文档 等。
Redis
优点:免费。支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。支持数据的备份。不仅支持键值对key-value 类型的数据,同时还提供列表 list ,集合 set ,有序集合 zset,哈希 hash 等数据结构的存储。

RDBMS(关系型数据库的管理系统)

Relational Database Management System:关系型数据库管理系统,通过表格来表示关系型的数据。

 RDBMS-server可以理解为服务端, RDBMS-ckient可以理解为客户端 

运行原理:

用户用过使用 RDBMS-ckient,把sql语句发送给RDBMS-server, 然后RDBMS-server把符合要求的数据返回给 RDBMS-ckient

通过SQL语句,可以将数据进行关系化、结构化的整理,然后展现在用户的客户端。

数据类型

Python语言的数据类型有int、str、list....等,C语言的数据类型有int、char float double等等

当然mysql也有自己的数据类型

数据型

 其中我们常用的是tinyint 、int(integer)、double而其他的smallint、mediumint、blgint、float、decimal后面用到再来查找

时间型

 date 、time、year、datetime、timestamp(时间戳)我们简单记住date和datetime就可以了,data精度到天,datetime精度到秒(常用于交易时间)

字符类型

char、 varchar 、tinyblob、tinytext、blob、text、medlumblob、medlumtext、longblob、longtext中我们先简单的记住varchar、text(长文本)

注意

例如, char(20) varchar(20) 表示可以存储 20 个字符而不是 20 个字节。 CHAR VARCHAR 类型 类似,但它们保存和检索的方式不同。在存储或检索过程中不进行大小写转换。
BINARY VARBINARY 类似于 CHAR VARCHAR ,不同的是它们包含二进制字符串而不要非二进 制字符串。它们包含字节字符串 而不是 字符字符串 。这说明它们没有字符集,并且排序和比较基于列值 字节的数值值。
BLOB 是一个二进制大对象,可以容纳可变数量的数据。有 4 BLOB 类型: TINYBLOB BLOB 、 MEDIUMBLOB 和 LONGBLOB 。它们区别在于可容纳存储范围不同。
4 TEXT 类型: TINYTEXT TEXT MEDIUMTEXT LONGTEXT 。对应的这 4 BLOB 类 型,可存储的最大长度不同,可根据实际情况选择
处理数据的时候不是用最正确的方式,而是最适用的方式

SQL

结构化查询语言,是一种用来操作 RDBMS 的数据库语言。在例如 oracle 中,会存在个别的语法差别之 外,当前关系型数据库都支持使用SQL 语言进行操作( SQL 语句不区分大小写)。
SQL 语句主要分为:
DQL :数据查询语言,用于对数据进行查询
DML :数据操作语言,对数据进行增加、修改、删除
DDL :数据定义语言,进行数据库、表的管理等
DCL :数据控制语言,进行授权与权限回收
CCL :指针控制语言,通过控制指针完成表的操作
对于一名程序员而言,数据库的增删改查是必须要掌握的。即为 insert delete update select
在处理数据的时候查(select)最重要

数据库操作

进入数据库

mysql -u root -p

查看所有的库

database:数据库  

加个s   databases:所有数据库

show databases;

选择数据库
use 数据库的名称;

创建数据库

create database  库名;或者CREATE DATABASE 库名;
create database 库名  charset=utf8;

 一般默认为utf-8编码格式

删除库

drop database 库名;或者DROP DATABASE 库名;

查看当前所在库的位置

select database();或者SELECT DATABASE();

如果忘记了这个命令我们可以再选择一次库 (USE 库名)

USE 库名

数据表的操作

选择库

use 库名 或者USE 库名

 查看当前库里所有的表

show tables;或者SHOW TABLES;

查看当前表的结构

desc 表名;或者 DESC 表名;

 field下的内容是表头名称 可以看出这个表里面有三个表头 id  name  pid

其中id 里面的数据类型为int   不能留空    主键      默认值空  

约束
主键 primary key :物理上存储的顺序(存在真实排序),主键都是非空、惟一的
非空 not null :此字段不允许为空
惟一 unique :此字段的值不允许重复
默认 default :当不填写此字段时,会使用默认值
外键 foreign key :对关系字段进行约束,当为关系字段填写值时,会到关联的表中查询此值是否
存在,如果存在则填写成功,如果不存在则填写失败并抛出异常。
虽然外键约束可以保证数据的有效性,但在进行数据的增、改、删、查时,都会降低数据库的性
能,所以不推荐使用。
查看表内容
select  * from 表名;
select *  from 表名 limit  20; //查看表内容的前20行

 总结:

这里简单的介绍了数据库的一些数值和名称,及一些简单命令,后面还会进一步介绍更多的命令

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

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

相关文章

大学英语六级相当于雅思考试多少分

雅思考试的难度,可以和大学英语六级进行对应,大家可以通过分数来基本确认雅思考试的难度系数。跟着小编来一起看看大学英语六级相当于雅思考试多少分? 英语六级相当于雅思多少分 大学英语六级和雅思没有直接的分数对应关系,一般大…

部署LVS+Keepalived高可用集群

目录 一、keepalived概述 1.1管理LVS负载均衡软件 1.2VRRP(Virtual Router Redundancy Protocol) 原理 二、keepalived服务的重要功能 2.1自动切换(failover) 2.2健康检查(health checking) 2.3高可用(HA&#x…

深度神经网络剪枝算法基础理论

非结构化剪枝可获得更高的剪枝率与精度,但是其非结构化特征带来的随机连接使得往往需要专门的软、硬件设计来支持其推理加速,而在现有的边缘硬件上难以满足其应用条件。鉴于此,目前在剪枝领域的研究多集中在结构化剪枝上,如图1.11…

RabbitMQ系列(22)--RabbitMQ优先级队列

前言:在购物系统中有一个订单催付的场景,如果客户在购物系统下单后在设定的时间内未付款那么就会给客户推送一条短信提醒,这是一个比较简单的功能,但是,商家对我们来说,肯定是要区分大客户和小客户的&#…

Xshell7/Xftp7 解决强制更新问题:要继续使用此程序,您必须应用最新的更新或使用最新版本

文章目录 一、背景二、解决方案方案一:重新安装(推荐)方案二:修改nslicense.dll文件(不推荐)方案三:修改系统时间(可选)Xshell.batXftp.bat 三、总结 一、背景 Xshell7/…

音频编码流程 ----- PCM编码为AAC格式

文章目录 1.音频编码流程2.编码函数API含义解释3.音频编码实战Demo PCM转AAC格式 1.音频编码流程 2.编码函数API含义解释 av_frame_make_writable 确保帧数据可写,尽可能避免数据复制.如果帧可写,则不执行任何操作,如果不可写,则…

ssm整合shiro安全框架 前后端分离项目

上一篇文章我们使用ssm整合了shiro安全框架前后端没有进行分离 本篇文章在上一章的项目基础上进行前后端代码分离操作 一、根据账号和密码登录后前后端代码分离🍉 (1)定义一个统一的json类 统一返回的格式🥝 package com.lzq.vo;import lombok.AllArg…

免费开源 | 基于SpringBoot的博客系统

介绍 基于springboot后端架构,websocket实现私信,前端采用thymeleafbootstraplayuiRedis 注册使用邮箱验证注册,且验证码存在redis中,所以需要有redis环境 软件架构 springbootwebsocketthymeleafbootstraplayuiRedismysql 8.…

设计模式--代理设计模式

🎉🎉🎉写在前面: 博主主页:🌹🌹🌹戳一戳,欢迎大佬指点! 目标梦想:进大厂,立志成为一个牛掰的Java程序猿,虽然现在还是一个…

C++之std::function和lambda表达式回调函数(一百五十二)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…

新版本FasterTransformer的FUSED_MHA

关于 UNFUSED_PADDED_MHA VS FUSED_MHA FUSED_MHA用了另一种kernel的执行方法(和添加链接描述相同,将在下一个section说明)UNFUSED_PADDED 的 KERNELS执行代码在 src/fastertransformer/kernels/unfused_attention_kernels.cu enum class AttentionType {UNFUSED_MHA,UNFUSED…

C#,中国福利彩票《刮刮乐》的数学算法(01)——幸运123

彩票名称:幸运123面值:20元/张最高奖:100万(人民币)全套款式:2款玩法介绍: 一份好运,二倍快乐,三重惊喜。福彩刮刮乐新游戏“幸运123”,红色的票面上点缀着礼…

基于simulink使用同步图像跟踪白板上的标记(附源码)

一、前言 此示例演示如何使用Simulink基于图像跟踪白板上的标记。 二、模型 示例模型包含模型引用层次结构。每个模型都有助于图像处理算法。 ex_tracking_marker- 跟踪输入视频中的标记的顶级模型。此模型使用视频查看器块呈现输出视频,并将输出帧记录在工作区变…

Unity桌面弹球小游戏Finger Soccer Game Kit 1.1

按住鼠标左键发射打球 还可以开启双人模式来玩 地址:https://download.csdn.net/download/Highning0007/88020441

《分布式中间件技术实战:Java版》学习笔记(三):Redis实现点赞、取消赞功能

用户在发布内容(包括博客、想法、日记等等)时,后台数据入库后,要往Redis的有序集合添加一条分数为0的记录。这个有序集合是用来对内容点赞量做排序的。同时,可以记录用户操作日志。 Override public String insertArt…

C++常用库函数 4.数学函数

函数名&#xff1a;abs 函数原型&#xff1a;int abs(int n) ; 参数 in 需要求绝对值的整数。 所需头文件&#xff1a;<cstdlib>或<cmath> 功能和返回值&#xff1a;返回 n 的绝对值&#xff1b;没有错误返回函数名&#xff1a;acos 函数原型&#xff1a;doubl…

Cocos Creator 打包 Android 原生,如何配置构建环境?关键就一点

前段时间&#xff0c;有好几位老铁留言 Cocos Creator 打包 Android 原生出现问题&#xff1a;一种是构建失败&#xff0c;一种是运行起来报错&#xff01; 其实&#xff0c;我也是有好长一段时间没有碰过 Android 原生了&#xff0c;而且我这台电脑&#xff0c;环境都没有配置…

idea创建web项目没有jsp选项,不识别jsp,没有tomcat选项

如果你的idea的web项目中没有jsp选项 同时也不识别jsp 那么建议你检查一下你的idea是否为社区版 如果是社区版那么没有jsp的问题无法解决&#xff0c;这只是无法识别&#xff0c;但是语句对的可以正常运行 解决这个问题建议换个idea 至于tomcat&#xff0c; 在plugins中搜s…

axios的学习

axios是基于promise对ajax的一种封装 //将省份信息打印到网页上 <p class"my-p"></p> <script src"https://unpkg.com/axios/dist/axios.min.js"></script> <script>axios({url:http://hmajax.itheima.net/api/province}).…

【PCIE】hot-reset和link disable

Hot reset 规则 如果上游伪端口&#xff08;Pseudo Port&#xff09;的任何一个通道连续接收到两个带有热复位位设置为1b、禁用链路位和回环位设置为0b的TS1有序集合&#xff0c;并且两个伪端口上的任何一个通道&#xff08;接收到TS1有序集合&#xff09;要么收到EIOS&#xf…