MySQL数据库 数据库基本操作(一):数据库的认识与基本操作

1. 数据库的基本认识

1.1 什么是数据库

专家们设计出更加利于管理数据的软件——数据库,它能更有效的管理数据。数据库可以提供远程服务,即通过远程连接来使用数据库,因此也称为数据库服务器。

1.2 数据库的分类

数据库可以大体分为:关系形数据库(eg:mysql)和非关系型数据库(eg:radis)

1.3 数据库的组成结构

  1. 整体结构

整体结构是客户端-服务器结构,数据库客户端和服务器通过网络来连接.客户端和服务器可以在同一台主机上,也可以在不同的机器上,在日常开发中,第二种较为常见.

  • 客户端(client):主动发起请求的一方
  • 服务器(server):被动接收请求的一方
  • 请求(request):客户端主动发送给服务器的数据
  • 相应(response):服务器给客户端返回的数据
    服务器
    在这里插入图片描述
  1. 分布式系统

在我们日常开发中,大部分的服务器都是给多个客户端提供服务(也有专属服务器,但是不多),服务器很有可能出现崩溃的情况,这是为了不给用户带来损失,我们便引出了分布式系统,说的直白一点就是不止有一台服务器在为用户提供服务,一台服务器挂掉其实问题也不大.
在这里插入图片描述

1.4 数据库的组织形式

服务器->数据库->数据表->行->列
在这里插入图片描述

2. 数据库的操作

  1. 显示当前数据库
    show databases;
    在这里插入图片描述

  2. 创建数据库
    create database 数据库名
    eg: 创建一个名为test1的数据库
    create database test1;
    在这里插入图片描述

说明:
当书数据库没有指定字符集和校验规则时,系统默认使用字符集utf8,这个字符集特殊的地方就是不包含emoji表情

[注意]

  • 如果数据库中已经有了该数据库,则不创建该数据库,否者创建.
  • 如果数据库名字与mysql关键字重合的时候,则使用反引号`引起来.
  1. 使用数据库(选中数据库)
    use 数据库名
    eg:选中test1
    use test1;
    在这里插入图片描述

  2. 删除数据库
    drop database 数据库名
    eg: 删除test1
    drop database test1;
    在这里插入图片描述

[说明]

  • 删除数据库是一个危险操作,操作时候需要谨慎
  • 删除数据库之后,里面的表和数据全部被删除

3. 常用数据类型

3.1 数据类型

分为整形和浮点型

数据类型大小说明对应Java类型
bit(m)m指定位数,默认为1二进制数字,m范围从1~64boolean
tinyint1字节byte
smallint2字节short
int4字节int
bigint8字节long
float(m,d)4字节单精度,m指定长度,d指定小数位数float
bouble(m,d)8字节double
decimal(m,d)m,d最大值+2双精度,m表示长度,d表示小数位数.精确数值
numeric(m,d)m,d最大值+2的decimal一样

[说明]

  • decimal相比于float和double数值是精确的值,没有小数尾数的偏差,自然他的计算需要花费更多的时间.
  • 在我们日常开发中,常用的数据类型,整数类型int,浮点类型decimal(m,d).

3.2 字符串类型

数据类型大小说明对应Java类型
varchar(size)0~65535字节size为字符串长度,长度可变String
text0~65535字节长文本数据String
mediumtext0~16777215字节中等长度文本数据String
blob0~65535字节二进制形式的长文本数据byte[]

[注意]

  • size代表的是字符串的长度,不是字节数.
  • varchar的大小为底层自适应,但是不超过规定的最大容量.
  • 中等长度文本可以用来储存更长的文本,但是增删查改的效率相对较低
  • 在日常开发中,一般用varchar(size)比较多.

3.3 日期类型

数据类型大小说明
datetime8字节1000~9999年,不会进行时区的检索和转换
timestamp4字节1970~2038年,自动检索当前时区并进行转换

[说明]

  • 第二个我们叫时间戳,其内部其实存储的是一个整数,只不过通过时间的转换对时间进行了格式化.
  • 在日常开发中,一般用datetime.

4. 表的操作

  1. 需要对数据库中的表进行操作的时候,必须先选中数据库.比如对test数据库进行表操作.
    use test
    在这里插入图片描述

  2. 展示表
    show 表名,eg: show tables展示test数据库中的所有表.
    在这里插入图片描述

  3. 查看表的结构
    desc 表名,eg: desc emp;
    在这里插入图片描述

这些内容包括:有哪些列,都叫啥,啥类型,以及有啥注意的.

  1. 创建表
    create table 表名 (列名1 数据类型,列名2 数据类型…);

实例:
create table test(id int,name varchar(5),age int,sex varchar(2));

在这里插入图片描述

  1. 删除
    drop table 表名;

实例:
drop table test;
在这里插入图片描述

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

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

相关文章

单片机家电产品--过零检测

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 单片机家电产品–过零检测 前言 记录学习单片机家电产品内容 已转载记录为主 一、知识点 1 什么是过零检测 1 过零检测指的是在交流系统中,在一个交流周期中…

Redis 的主从复制、哨兵

目录 一. Redis 主从复制 1. 介绍 2. 作用 3. 流程 4. 搭建 Redis 主从复制 安装redis 修改 master 的Redis配置文件 修改 slave 的Redis配置文件 验证主从效果 二. Redis 哨兵模式 1. 介绍 2. 原理 3. 哨兵模式的作用 4. 工作流程 4.1 故障转移机制 4.2 主节…

装饰工程管理系统|基于Springboot的装饰工程管理系统设计与实现(源码+数据库+文档)

装饰工程管理系统-项目立项子系统目录 目录 基于Springboot的装饰工程管理系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、管理员功能实现 (2)合同报价管理 (3)装饰材料总计划管理 (4&#xff0…

深信服超融合虚拟机的导入方法

以从vmware虚拟机导出的虚拟机为例。 1 进入虚拟机页面点【新增】,选择【导入虚拟机】 2 以文件类型为ovf、mf、vmdk为例导入 选择文件类型,选择那三个导出的虚拟机的文件,选择分组,存储位置和运行位置默认,操作系统…

Windows 中的硬链接、软连接、快捷方式和普通文件

在 Windows 中,文件可以有四种类型: 硬链接软连接快捷方式普通文件 当我们正常创建一个文件时,这个文件就是普通文件 echo hello > a.txt (Get-Item "a.txt").LinkType -eq $null # 输出 True然后我们可以为其添加一个软连接…

双榜有名!美创入围第一新声x天眼查「年度中国高科技高成长企业」系列榜单

为了更好地了解中国高科技高成长企业的现状和发展趋势,2023年底,【第一新声】特联合【天眼查】启动“数字未来”系列之2023年度中国高科技高成长企业系列榜单评选征集工作,发现和挖掘被资本市场关注,同时受客户认可的高科技、高成…

百卓Smart管理平台 importexport.php SQL注入漏洞复现(CVE-2024-27718)

0x01 产品简介 百卓Smart管理平台是北京百卓网络技术有限公司(以下简称百卓网络)的一款安全网关产品,是一家致力于构建下一代安全互联网的高科技企业。 0x02 漏洞概述 百卓Smart管理平台 importexport.php 接口处存在SQL注入漏洞,攻击者除了可以利用 SQL 注入漏洞获取数据…

后台返回数据需要自己匹配图标,图标命名与后台返回的变量保持一致

testItemId为后台返回匹配图标的变量名 sportsTargetsData:{suggestSportTargetId: "2",unlocks: [{ testItemId: vo2max_high_knee, sportTargetName: 心肺能力, indexName: 心肺能力, sportTargetId: 1 },{ testItemId: grip_strength, sportTargetName: 基础力量…

互联网轻量级框架整合之Spring框架II

持久层框架 Hibernate 假设有个数据表&#xff0c;它有3个字段分别是id、rolename、note, 首先用IDEA构建一个maven项目Archetype选择org.apache.maven.archetypes:maven-archetype-quickstart即可&#xff0c;配置如下pom <project xmlns"http://maven.apache.org/…

软考 系统架构设计师系列知识点之云原生架构设计理论与实践(13)

接前一篇文章&#xff1a;软考 系统架构设计师系列知识点之云原生架构设计理论与实践&#xff08;12&#xff09; 所属章节&#xff1a; 第14章. 云原生架构设计理论与实践 第3节 云原生架构相关技术 14.3.2 云原生微服务 1. 微服务发展背景 过去开发一个后端应用最为直接的方…

深入解析:如何使用Xcode上传苹果IPA安装包至App Store?

目录 引言 摘要 第二步&#xff1a;打开appuploader工具 第二步&#xff1a;打开appuploader工具&#xff0c;第二步&#xff1a;打开appuploader工具 第五步&#xff1a;交付应用程序&#xff0c;在iTunes Connect中查看应用程序 总结 引言 在将应用程序上架到苹果应用商…

洛谷B3735题解

题目描述 圣诞树共有 n 层&#xff0c;从上向下数第 1 层有 1 个星星、第 2 层有 2 个星星、以此类推&#xff0c;排列成下图所示的形状。 星星和星星之间用绳子连接。第 1,2,⋯,n−1 层的每个星星都向下一层最近的两个星星连一段绳子&#xff0c;最后一层的相邻星星之间连一段…

Python学习从0到1 day20 第二阶段 面向对象 ③ 继承

循此苦旅&#xff0c;以达天际 —— 24.4.3 一、继承的基础语法 学习目标&#xff1a; ① 理解继承的概念 ② 掌握继承的使用方式 ③ 掌握pass关键字的作用 单继承 语法&#xff1a; class 类名(父类名): 类内容体 继承分为&#xff1a;单继承和多继承 继承表示&#xff1a;将从…

WE博客代码系统

WE博客代码系统 说明文档 运行前附加数据库.mdf&#xff08;或sql生成数据库&#xff09; 主要技术&#xff1a; 基于asp.net mvc架构和sql server数据库&#xff0c;并采用EF实体模型开发。 三层架构并采用EF实体模型开发 功能模块&#xff1a; WE博客代码系统 WE博客代码系…

Vue指令之v-model

调了半天没反应&#xff0c;结果是没引用Vue&#xff0c;我是伞兵。 v-model的作用是将视图与数据双向绑定。一般情况下&#xff0c;Vue是数据驱动的&#xff0c;即数据发生改变后网页就会刷新一次&#xff0c;更改对应的网页内容&#xff0c;即数据单向绑定了网页内容。而使用…

每日一题————P5725 【深基4.习8】求三角形

题目&#xff1a; 题目乍一看非常的简单&#xff0c;属于初学者都会的问题——————————但是实际上呢&#xff0c;有一些小小的坑在里面。 就是三角形的打印。 平常我们在写代码的时候&#xff0c;遇到打印三角形的题&#xff0c;一般简简单单两个for循环搞定 #inclu…

【C++第三阶段】模板类模板通用数组实现案例

以下内容仅为当前认识&#xff0c;可能有不足之处&#xff0c;欢迎讨论&#xff01; 文章目录 模板怎么使用模板函数模板注意事项普通函数与函数模板的区别普通函数与函数模板调用规则函数模板限制 类模板类模板语法类模板与函数模板区别类模板中成员函数创建时机类模板对象做函…

Google Chrome 常用设置

Google Chrome 常用设置 References 转至网页顶部 快捷键&#xff1a;Home 转至内容设置 chrome://settings/content 清除浏览数据 历史记录 -> 清除浏览数据 关于 Chrome 设置 -> 关于 Chrome chrome://settings/help References [1] Yongqiang Cheng, https:/…

关于ansible的模块 ③

转载说明&#xff1a;如果您喜欢这篇文章并打算转载它&#xff0c;请私信作者取得授权。感谢您喜爱本文&#xff0c;请文明转载&#xff0c;谢谢。 接《关于Ansible的模块①》和《关于Ansible的模块②》&#xff0c;继续学习ansible的user模块。 user模块可以增、删、改linux远…

回溯算法|491.递增子序列

力扣题目链接 class Solution { private:vector<vector<int>> result;vector<int> path;void backtracking(vector<int>& nums, int startIndex) {if (path.size() > 1) {result.push_back(path);// 注意这里不要加return&#xff0c;要取树上…