欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MySQL--- 有关数据库的基本概念和MySQL常用命令

程序员文章站 2022-06-26 13:51:16
DB、SQL和DBMSDB:DateBase(数据库,在硬盘上以文件形式存在)SQL:Structured Query Language(结构化查询语言),是一门标准通用语言,适用于所有的数据库产品。DBMS:DateBase Management System(数据库管理系统,常见的有:MySQL、Oracle、DB2、Sybase、SqlServer等),负责执行SQL语句,通过SQL语句来操控数据库中的数据。表(table)表是数据库的基本组成单元,数据库中的所有数据都是以表格形式组织。...
相关文章:
  1. 《MySQL学习记录 (一) ----- 有关数据库的基本概念和MySQL常用命令》
  2. 《MySQL学习记录 (二) ----- SQL查询语句(DQL)》

本篇涉及内容


  • 数据库相关概念
  • MySQL常用命令


DB、SQL和DBMS相关概念


  • DB:DateBase(数据库,在硬盘上以文件形式存在)
  • SQL:Structured Query Language(结构化查询语言),是一门标准通用语言,适用于所有的数据库产品。
  • DBMS:DateBase Management System(数据库管理系统,常见的有:MySQL、Oracle、DB2、Sybase、SqlServer等),负责执行SQL语句,通过SQL语句来操控数据库中的数据。


表(table)


一、相关概念
  1. 表是数据库的基本组成单元,数据库中的所有数据都是以表格形式组织。
    一张表包括行和列。

    行:被成为数据/记录(data)
    列:被称为字段(column)

  2. 字段具有的特征:字段名、数据类型、相关的约束。

二、示例
学号(int) 姓名(valchar) 年龄(int)
1001 莫二蛋 8
1002 树袋熊 7
1003 多啦 6

字段:学号、姓名、年龄。
记录:上表中从第二行开始每一行就是一个记录。



SQL语句的分类


DQL(数据查询语言):select,查询语句。
DML(数据操作语言):insert delete update,对表中数据增删改语句。
DDL(数据定义语言):create drop alter,对表结构的增删改语句
TCL(事物控制语言):commit提交事物、rollback回滚事物。
DCL(数据控制语言):grant授权、revoke撤销权限等操作。



常用的MySQL命令


一、命令介绍
操作 命令
登陆数据库 /usr/local/mysql/bin/mysql -u root -p后加上数据库密码
显示所有数据库 show databases;
创建数据库 create database 数据库名称;
删除数据库 drop database 数据库名称;
使用指定数据库 use 数据库名称;
导入sql脚本到数据库中 source 拖入sql脚本后按回车
显示当前数据库所有表 show tables;
显示其他数据库所有表 show tables from 其他数据库名称;
查看指定表的结构 desc 表名
查看创建某个表时使用的sql语句 show create table 表名;
查看当前正在使用哪个数据库 select database();
查看MySQL版本号 select version();
结束一条语句 \c
退出MySQL exit
二、示例
  1. 进入数据库
     终端输入:/usr/local/mysql/bin/mysql -u root -p后加上数据库密码进入数据库。

  2. 显示所有数据库
     终端输入:show databases;

    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | databasetest01     |
    | information_schema |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    
  3. 创建数据库
     终端输入:create database databasetest01;

    mysql> create database databasetest01;
    Query OK, 1 row affected (0.02 sec)
    
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | databasetest01     | <-----这里就是我们刚刚创建出来的数据库
    | information_schema |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    
  4. 使用数据库
     终端输入:use databasetest01;

    mysql> use databasetest01
    Database changed
    
  5. 导入sql脚本到数据库中
     终端输入:source 然后把外部sql脚本拖入终端即可

    mysql> source /Users/apple/Downloads/其他/test.sql 
    
  6. 显示当前使用的数据库中的所有表格
     终端输入:show tables;

    mysql> show tables;
    +--------------------------+
    | Tables_in_databasetest01 |
    +--------------------------+
    | DEPT                     | <-----部门表(department)
    | EMP                      | <-----员工表(employee)
    | SALGRADE                 | <-----工资等级表(salary grade)
    +--------------------------+
    
  7. 查看指定表的结构
     终端输入:desc dept;

       mysql> desc dept;
    +--------+-------------+------+-----+---------+-------+
    | Field  | Type        | Null | Key | Default | Extra |
    +--------+-------------+------+-----+---------+-------+
    | DEPTNO | int         | NO   | PRI | NULL    |       | department number
    | DNAME  | varchar(14) | YES  |     | NULL    |       | department name
    | LOC    | varchar(13) | YES  |     | NULL    |       | location
    +--------+-------------+------+-----+---------+-------+
    

     终端输入:desc emp;

    mysql> desc emp;
    +----------+-------------+------+-----+---------+-------+
    | Field    | Type        | Null | Key | Default | Extra |
    +----------+-------------+------+-----+---------+-------+
    | EMPNO    | int         | NO   | PRI | NULL    |       | 员工编号
    | ENAME    | varchar(10) | YES  |     | NULL    |       | 员工姓名
    | JOB      | varchar(9)  | YES  |     | NULL    |       | 员工岗位
    | MGR      | int         | YES  |     | NULL    |       | 上级领导编号
    | HIREDATE | date        | YES  |     | NULL    |       | 入职日期
    | SAL      | double(7,2) | YES  |     | NULL    |       | 月薪
    | COMM     | double(7,2) | YES  |     | NULL    |       | 津贴
    | DEPTNO   | int         | YES  |     | NULL    |       | 部门编号
    +----------+-------------+------+-----+---------+-------+
    

     终端输入:desc salgrade;

    mysql> desc salgrade;
    +-------+------+------+-----+---------+-------+
    | Field | Type | Null | Key | Default | Extra |
    +-------+------+------+-----+---------+-------+
    | GRADE | int  | YES  |     | NULL    |       | 工资等级
    | LOSAL | int  | YES  |     | NULL    |       | 最低薪资
    | HISAL | int  | YES  |     | NULL    |       | 最高薪资
    +-------+------+------+-----+---------+-------+
    
  8. 查看创建emp这张表时所用的sql语句
     终端输入:show create table emp;

    | Table | Create Table
    
    | emp   | CREATE TABLE `emp` (
      `EMPNO` int NOT NULL,
      `ENAME` varchar(10) DEFAULT NULL,
      `JOB` varchar(9) DEFAULT NULL,
      `MGR` int DEFAULT NULL,
      `HIREDATE` date DEFAULT NULL,
      `SAL` double(7,2) DEFAULT NULL,
      `COMM` double(7,2) DEFAULT NULL,
      `DEPTNO` int DEFAULT NULL,
      PRIMARY KEY (`EMPNO`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
    

本文地址:https://blog.csdn.net/k909397116/article/details/107367532

相关标签: MySQL