写点什么

MySQL 系列教程之(三) MySQL 基本概念和操作

用户头像
若尘
关注
发布于: 2 小时前
MySQL 系列教程之(三) MySQL 基本概念和操作

MySQL 使用方法

  • 命令行模式

  • MySQL Command Line Client :命令行模式下输入 sql 语句来实现数据库的增删改查等操作

  • 图形界面工具

  • 类似同于 excel,我们可以用点点来实现增删改查等数据库操作

SQL

  • SQL 是用于访问和处理数据库的标准的计算机语言

  • 是一种专门用来与数据库通信的语言,提供一种从数据库中读写数据的简单有效的方法

  • SQL 指结构化查询语言,指数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统

一、SQL 语言分类

数据查询语言 DQL,数据操纵语言 DML,数据定义语言 DDL,数据控制语言 DCL。

1、数据查询语言 DQL

基本结构是由 SELECT 子句,FROM 子句,WHERE 子句构成

2、数据操纵语言 DML

数据操纵语言 DML 主要有三种形式:


  1. 插入:INSERT

  2. 更新:UPDATE

  3. 删除:DELETE

3、数据定义语言 DDL

数据定义语言 DDL 用来创建数据库中的表、视图、索引、同义词、聚簇等


如:CREATE TABLE / VIEW / INDEX / SYN(同义词) / CLUSTER(簇)

4、数据控制语言 DCL

数据控制语言 DCL 用来授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据库实行监视等。如:


  1. GRANT: 授权

  2. 数据控制语言 DCL 用来授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据库实行监视等

  3. ROLLBACK: 回滚

  4. COMMIT: 提交



注意

在数据库的插入、删除和修改操作时,只有当事务在提交到数据库时才算完成。在事务提交前,只有操作数据库的这个人才能有权看到所做的事情,别人只有在最后提交完成后才可以看到
复制代码



二、SQL 语言优点

  • 几乎所有重要的 DBMS 都支持 SQL

  • SQL 不是某个特定数据库供应商专有的语言。所以,学习此语言使你几乎能与所有数据库打交道。

  • SQL 简单易学

  • 它的语句全都是由描述性很强的英语单词组成,而且这些单词的数目不多

  • SQL 尽管看上去很简单,但它实际上是一种强有力的语言,灵活使用其语言元素,可以进行非常复杂和高级的数据库操作。



三、SQL 语法特点

  • SQL 语句可以换行,要以分号结尾



  • 命令不区分大小写关键字和函数建议用大写(官方推荐)



  • 命令打错了换行后不能修改,可以用\c 取消




四、数据库的操作步骤

  • 连接 MySQL

  • 打开数据库

  • 操作数据

  • 退出连接



1、连接

打开命令行,输入密码,进行连接,回车后出现 mysql>表示连接成功





2、打开

在你最初连接到 MySQL 时,没有任何数据库打开供你使用。在你执行任意数据库进行数据操作前,需要选择一个数据库。为此,可使用 USE 关键字。


USE 数据库名;USE python21;
复制代码



显示出的 Database changed 表示数据库选择成功,可以使用当前数据库下的所有数据表中的数据


必须先使用 USE 打开数据库(选中指定的数据库),才能读取其中的数据

注意

  • 关键字<br> 作为 MySQL 语言组成部分的一个保留字。决不要用关键字命名一个表或列

  • 在使用 USE 切换并选择数据库时,要选择已存在的数据库,否则报一下错误




3、操作

1)数据库操作

  • 查看数据库

  • SHOW DATABASES; 返回可用数据库的一个列表



  • 创建数据库

  • CREATE DATABASE 库名 DEFAULT CHARSET=UTF8; (执行上大小写无差别)



  • 查看建库语句

  • SHOW CREATE DATABASE 数据库名;



  • 删除数据库

  • DROP DATABASE 库名;




2)数据表操作

数据库管理系统中,可以有很多数据库,每个数据库中可以包括多张数据表


  • 创建表


      # 如果创建已存在表名会报错      create table 表名 (          字段1 类型 约束条件,          字段2 类型 约束条件      )default charset=utf8;            例如:      create table shop (          id int not null primary key auto_increment,          goods_name varchar(255),          goods_id int not null,          goods_prices varchar(255)      )default charset=utf8;              # 如果表不存在,则创建,如果存在就不执行这条命令      create table if not exists 表名 (          字段1 类型 约束条件,          字段2 类型 约束条件,           .......)      default charset=utf8;
复制代码


例如:
复制代码


  create table if not exists shop (id int not null primary key auto_increment, goods_name varchar(255),goods_id int not null,goods_prices varchar(255))default charset=utf8;
复制代码


  • 查看建表语句


      SHOW CREATE TABLE 表名 \G       SHOW CREATE TABLE 表名;
复制代码



  • 查看某一数据库内的所有数据表


      SHOW TABLES;       查看数据表之前需要进入指定数据库(也就是查看当前数据库下的数据表)
复制代码



  • 查看数据表中数据


      SELECT * FROM 表名;
复制代码



  1. 每一项称为字段

  2. 每一行称为一条记录


  • 查看表结构


      DESC 表名;
复制代码



  • 删除数据表


      DROP TABLE 表名;
复制代码



3)数据操作




  • 增加数据 / 插入数据


      # 单条插入      INSERT INTO 表名 (字段1,字段2,字段3,...) values(值1,值2,值3,...);          例如:insert into class(class_name,teacher,stu_num) values ('python1','雷雷',19);     # 批量插入      INSERT INTO 表名 (字段1,字段2,字段3,...) values (a值1,a值2,a值3),(b值1,b值2,b值3),...;            例如:insert into class(class_name,teacher,stu_num) values ('python4','雷雷',67),('python2','萌萌',23),('python3','雷雷',23);
复制代码


  • 查询


      SELECT * FROM 表名;      SELECT 字段1,字段2,字段3 FROM 表名;            SELECT * FROM 表名 WHERE 字段=某个值;
复制代码


  • 修改


    UPDATE 表名 SET 字段=某个值 WHERE 条件;
复制代码


  • 删除


      DELETE FROM 表名WHERE 字段=某条件;
复制代码



4、退出

    exit;    quit;
复制代码



五、快捷键

  • \G 格式化输出,垂直显示结果(竖立显示)

  • \s 查看服务器端信息

  • using delimiter 分隔符 connection id 连接的连接 ID 或者 thread ID。对于已经建立的连接的客户端,都有一个唯一的连接 ID

  • \c 结束命令输入操作

  • \h 查看帮助

  • \q 退出当前命令行模式

发布于: 2 小时前阅读数: 4
用户头像

若尘

关注

还未添加个人签名 2021.01.11 加入

还未添加个人简介

评论

发布
暂无评论
MySQL 系列教程之(三) MySQL 基本概念和操作