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

数据库使用的介绍

什么是SQL

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

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

    • 此处学习的 SQL 就是通过 mysql 的命令行客户端来进行输入(图形化客户端也是同理

      主流的数据库都是支持 SQL编程语言

      虽然不同数据库支持的 SQL语法 有细微差距,但整体思路是一样的

MySQL 客户端闪退的原因

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

  • 在此处输入的"命令"就是 SQL 语句

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


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

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

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

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

"数据库"的含义

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

对库的基本操作

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

  • 语法为:show databases;


2. 创建数据库

  • 语句为:create database 数据库名;

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


  • 创建数据库的时候,还需要指定数据库的"字符集"(charset)
  • 语句为:create database 数据库名 charset 字符集;

中文编码方案

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

  • if not exists ------>若不存在,则...

  • 为后续批量执行提供便利

  • collate ------>字符约束,面试字符串之间的比较规则

    后续会涉及字符串比较大小等...



3.选中数据库

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

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



4.删除数据库

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

怎么避免误删库

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

DBA

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

一二三原则

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

数据库的表操作

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

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

  • 语法为:show tables;

创建表:

  • 语法为: create table 表名(列名 类型,列名 类型...);


    #-- 是注释前缀

查看表结构的详细情况

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

相关推荐
乌鸦乌鸦你的小虎牙1 小时前
qt 5.12.8 配置报错(交叉编译环境)
开发语言·数据库·qt
一只大袋鼠2 小时前
Redis 安装+基于短信验证码登录功能的完整实现
java·开发语言·数据库·redis·缓存·学习笔记
Anastasiozzzz2 小时前
深入研究Redis的ZSet底层数据结构:从 Ziplist 的级联更新到 Listpack 的完美救场
数据结构·数据库·redis
菠萝蚊鸭2 小时前
x86 平台使用 buildx 基于源码构建 MySQL Wsrep 5.7.44 镜像
数据库·mysql·galera·wsrep
沙漏无语4 小时前
(二)TIDB搭建正式集群
linux·数据库·tidb
姚不倒4 小时前
三节点 TiDB 集群部署与负载均衡搭建实战
运维·数据库·分布式·负载均衡·tidb
隔壁小邓4 小时前
批量更新方式与对比
数据库
数据知道4 小时前
MongoDB复制集架构原理:Primary、Secondary 与 Arbiter 的角色分工
数据库·mongodb·架构
人道领域4 小时前
苍穹外卖:菜品新增功能全流程解析
数据库·后端·状态模式
修行者Java4 小时前
(七)从 “非结构化数据难存储” 到 “MongoDB 灵活赋能”——MongoDB 实战进阶指南
数据库·mongodb