当前位置: 首页 > news >正文

【MySQL】:对库和表的基本操作方法

在这里插入图片描述

数据库使用的介绍

什么是SQL

  • 学习数据库的使用——>基于 SQL编程语言 来对数据库进行操作
    • 重点表述的是“需求”,期望得到什么结果。(至于结果是如何得到的,并不关键,都是数据库服务器在背后做好了)

    • 重点表述的是“逻辑”,“做一件事,要怎么做”

    • 此处学习的 SQL 就是通过 mysql 的命令行客户端来进行输入(图形化客户端也是同理
      主流的数据库都是支持 SQL编程语言
      虽然不同数据库支持的 SQL语法 有细微差距,但整体思路是一样的

MySQL 客户端闪退的原因

  1. 密码不正确
  2. 数据库服务器没有正确启动

  • 在此处输入的“命令”就是 SQL 语句
    image.png|543

这些输入的内容都会通过 mysql客户端,发送给 mysql服务器,由服务器程序负责执行
image.png|493


  • 之前谈到的数据库,指的是像 mysqloracle 这样的“软件”

  • 此处谈到的数据库,指的是数据库软件上,组织数据的“数据集合”

    image.png|494

  • 硬盘上存储的数据,先划分成多个“数据库”(逻辑上的数据集合,可以将一些有关联的数据表,放在同一个“数据库”中
    不过这些不同逻辑上的数据集合,物理上是存储在同一个服务器硬盘上的

    • 每个数据库里面又包含很多的“表”
    • 每个表中又包含若干行
    • 每个行里面又有若干列

“数据库”的含义

  1. 一类软件
  2. 组织数据的“数据集合”

对库的基本操作

1.查看当前有哪些数据库

  • 语法为:show databases;
    image.png|259


2. 创建数据库

  • 语句为:create database 数据库名;
    image.png|460

秒(s)—>毫秒(ms)—>微秒(us)—>纳秒(ns)—>皮秒(ps)


  • 创建数据库的时候,还需要指定数据库的“字符集”(charset)
  • 语句为:create database 数据库名 charset 字符集;
    image.png|576

中文编码方案

  1. GBK,主要是在中国大陆使用,只表示简体字,此时一个汉字是 2 个字节
  2. UTF-8,属于变长编码,表示不同的符号,可以用 1-4 个字节来表示,对于中文汉字来说,一般是 3 个字节表示
  • UTF8 是当前世界上最流行的编码方式,不仅仅能表示中文,也能表示任何一种文字

  • if not exists ——>若不存在,则…

  • 为后续批量执行提供便利
    image.png|546

  • collate ——>字符约束,面试字符串之间的比较规则
    后续会涉及字符串比较大小等…



3.选中数据库

  • 数据库组织数据的规则:

    1. 一个数据库服务器上有很多“数据库” ——>类似“文件夹”的感觉
    2. 一个数据库上有很多“数据表”
    3. 一个数据表上有很多“数据行”
    4. 一个数据行上有很多“数据列”
  • 语法为:use 数据库名;
    image.png|332



4.删除数据库

  • 语法为:drop database 数据库名;
  • 一旦删除,就恢复不了了
    image.png|362

怎么避免误删库

  1. 控制权限
    • 只有少数人能操作,普通开发只能“读操作”,不能“修改”甚至“删库”。

DBA

  • 数据库管理员,专业玩数据库的
  • 一般中大厂才有,小公司较少
  • 非常吃经验,越老越吃香
  1. 及时备份数据库的数据
    • 将数据拷贝出来,存储在别的地方

一二三原则

  • 一份数据
  • 至少存在两个机器上
  • 至少有三个副本(拷贝出三份)
  1. 确实要进行“删库”危险操作,最好拉上一个人一起操作,看着你操作
    人脑有时候会出 bug

数据库的表操作

  • 先用 use 选中数据库
  • 语法为:use 数据库名;

查看当前数据库中有哪些表

  • 语法为:show tables;
    image.png|208

创建表:

  • 语法为: create table 表名(列名 类型,列名 类型...);
    image.png
    image.png|255
    #-- 是注释前缀

查看表结构的详细情况

  • 主要是列的相关信息,,语法为:desc 表名;
    image.png

在这里插入图片描述

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 33.【C语言】实践扫雷游戏
  • WEB安全-SQL注入
  • 鸿蒙语言基础类库:【@system.vibrator (振动)】
  • 【Langchain大语言模型开发教程】记忆
  • electron学习笔记
  • linux之网络子系统-本机发包到本机 实现
  • 1比25万基础电子地图(广东版)
  • 踏进互动科技世界使用Arduino
  • 【测开能力提升-Javascript】JavaScript运算符流程结构
  • 构建高效Node.js中间层:探索请求合并转发的艺术
  • 深入解析sizeof和strlen的区别与联系
  • 麒麟V10安装nginx、mysql报错缺少包:error while loading shared libraries libssl.so.10
  • Sparksql常用的json相关函数
  • PostgreSQL 中如何处理数据的唯一性约束?
  • JVM 21 的优化指南:如何进行JVM调优,JVM调优参数有哪些
  • [NodeJS] 关于Buffer
  • [译]前端离线指南(上)
  • Angular6错误 Service: No provider for Renderer2
  • Docker: 容器互访的三种方式
  • es6
  • java小心机(3)| 浅析finalize()
  • MySQL-事务管理(基础)
  • php的插入排序,通过双层for循环
  • spring + angular 实现导出excel
  • STAR法则
  • 编写高质量JavaScript代码之并发
  • 初识 webpack
  • 从地狱到天堂,Node 回调向 async/await 转变
  • 给第三方使用接口的 URL 签名实现
  • 计算机常识 - 收藏集 - 掘金
  • 每天10道Java面试题,跟我走,offer有!
  • 时间复杂度与空间复杂度分析
  • 微信小程序上拉加载:onReachBottom详解+设置触发距离
  • 线上 python http server profile 实践
  • 一起来学SpringBoot | 第十篇:使用Spring Cache集成Redis
  • 在 Chrome DevTools 中调试 JavaScript 入门
  • 中国人寿如何基于容器搭建金融PaaS云平台
  • Redis4.x新特性 -- 萌萌的MEMORY DOCTOR
  • ​VRRP 虚拟路由冗余协议(华为)
  • # Apache SeaTunnel 究竟是什么?
  • # 透过事物看本质的能力怎么培养?
  • #HarmonyOS:软件安装window和mac预览Hello World
  • #laravel 通过手动安装依赖PHPExcel#
  • #我与Java虚拟机的故事#连载01:人在JVM,身不由己
  • (16)Reactor的测试——响应式Spring的道法术器
  • (173)FPGA约束:单周期时序分析或默认时序分析
  • (C++17) std算法之执行策略 execution
  • (C语言)深入理解指针2之野指针与传值与传址与assert断言
  • (MTK)java文件添加简单接口并配置相应的SELinux avc 权限笔记2
  • (ZT)薛涌:谈贫说富
  • (已解决)vue+element-ui实现个人中心,仿照原神
  • (转)visual stdio 书签功能介绍
  • **PyTorch月学习计划 - 第一周;第6-7天: 自动梯度(Autograd)**
  • .NET / MSBuild 扩展编译时什么时候用 BeforeTargets / AfterTargets 什么时候用 DependsOnTargets?
  • .NET Core IdentityServer4实战-开篇介绍与规划