• MySQL|相关概念及规则


    MySQL

    相关历史

    最初是瑞典的N有SQK AB 公司,1995年开发

    2008年被SUN公司收购

    2009年 Oracle收购SUN公司,进而MySQL进入Oracle

    2016每年,MySQL 8.0问世

    相关特点

    • 开源的、关系型数据库

    • 支持千万级别的数据量存储,大型的数据库

    DB\DBMS\SQL

    DB:database,看做是数据库文件(类似:.doc、.txt……)

    DBMS:数据库管理系统。(类似于word\wps等工具)

    MySQL数据库中安装了MySQL DBMS,使用MySQL DBMS来管理和操作DB,使用的是SQL语言

    非关系型数据库

    • 键值对类型的:redis
    • 文档型:MangoDB
    • 搜索引擎数据库:ES、Solr
    • 列式数据库:HBase
    • 图形数据库:InfoGrid

    表与表之间的关系

    • ORM 思想
    • 表与表之间的记录关系:一对一、一对多、多对多、自关联

    启动相关命令


    MySQL|相关命令

    net start MySQL#服务名
    net stop  MySQL#服务名
    
    • 1
    • 2

    MySQL|登陆

    mysql -uroot  -ppassword
    mysql -u root -p
    mysql -uroot -p
    
    • 1
    • 2
    • 3

    -u #用户
    -p #密码
    -P #端口
    -h #host IP
    
    • 1
    • 2
    • 3
    • 4

    ## 查看版本信息
    mysql -v
    mysql --version
    
    • 1
    • 2
    • 3

    注意事项

    -p 与密码之间不可以加空格,别的都行












    基础指令进阶版

    查看数据库支持的编码特性

    show variables like ‘character_%’;_

    show variables like ‘collation_%’;

    数据库级别

    # 查看所有的数据库
    show databases;
    # 创建新的数据库
    create database database_name;
    # 使用某个数据库
    use database_name;
    # 查看所有的表
    show tables;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    表级别

    MySQL | 表操作

    show databases; ## 查看所有数据库表
    ## 使用某个数据库(切换到该数据库下)
    use database_name; 
    ## 查看该数据库下所有的表
    show tables;
    
    • 1
    • 2
    • 3
    • 4
    • 5

    MySQL|增删改查

    # 插入数据
    insert into TABLE_NAME values(1001,'JJ');
    
    # 查看数据
    select * from TABLE_NAME;
    
    # 删除数据
    delete from TABLE_NAME where id=1001;
    
    # 更新数据
    update from TABLE_NAME 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    基础的数据库语句

    • 1946年,世界上第一台电脑诞生,如今,借由这台电脑发展起来的互联网已经自成江湖。在这几十年里,无数的技术、产业在这片江湖里沉浮,有的方兴未艾,有的已经几幕兴衰。但在这片浩荡的波动里,有一门技术从未消失,甚至“老当益壮”,那就是SQL。
    • 45年前,也就是 1974 年,1BM 研究员发布了一篇揭开数据库技术的论文 《SEQUEL:一门结构化的英语查询语言》,直到今天这门结构化的查询语言并没有太大的变化,相比于其他语言,SQL 的半衰期可以说足非常长了。
    • 不论是前端工程师,还是后端算法工程师,都一定会和数据打交道,都需要了解如何又快又准确地提取自己想要的数据。更别提数据分析师了,他们的工作就是和数据打交道,整理不同的报告,以便指导业务决策。
    • SQL (Structured Query Language,结构化查询语言) 是使用关系模型的数据库应用语言,与数据直接打交道,由IBM 上世纪70年代开发出来。后由美国国家标准局 (ANSI) 开始着手制定SQL标准,先后有 SQL-86SQL-89SQL-92,SQL-99 等标准。
    • SQL 有两个重要的标准,分别是SQL92SQL99,它们分别代表了92年和99年颁布的SQL标准,我们今天使用的 SQL语言依然遵循这些标准。
    • 不同的数据库生产厂商都支持SQL语句,但都有特有内容。

    SQL分类

    • DDL (Data Definition Languages、数据定义语言),这些语句定义了不同的数据库、表、视图、索引等数据库对象,还可以用来创建、删除、修改数据库和数据表的结构。
    CREATE # 创建 databases / table / index
    DROP	 # 删除表
    ALTER	 # 修改表
    RENAME # 重命名
    TRUNCATE # 清空表
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • DML (Data Manipulafion Language、数据操作语言),用于添加、删除、更新和查询数据库记录,并检查数据完整性。

    SELECT也被单独称作是DQL

    INSERT # 插入
    DELETE # 删除
    UPDATE # 更新、修改
    SELECT # 查询
    
    • 1
    • 2
    • 3
    • 4
    • DCL (Data Control Language、数据控制语言),用于定义数据库、表、字段、用户的访问权限和安全级别。

    COMMIT、ROLLBACK又被称作TCL  事务控制语言

    COMMIT 		# 提交
    ROLLBACK 	# 回滚
    SAVEPOINT # 设置保存点
    GRANT			# 赋予权限
    REVOKE		# 回收权限
    
    • 1
    • 2
    • 3
    • 4
    • 5

    SQL 基本规则

    SQL可以写在一行或者多行。为了提高可读性,各子句分行写,必要时使用缩进

    • 每条命令以;/g/G结束
    • 关键字不能被缩写也不能分行
    • 关于标点符号
      • 必须保证所有的0、单引1号、双引1号是成对结束的
      • 必须使用英文状态下的半角输入方式
      • 字符串型和日期时间类型的数据可以使用单1号(表示列的别名,尽量使用双引号(“”),而且不建议省略as

    SQL大小写规范

    在Windows上大小写不敏感,在Linux上大小写敏感

    • MysQL 在windows 环境下是大小写不敏感的
    • MysQL 在Linux 环境下是大小写敏感的
      • 数据库名、 表名、表的别名、变量名是严格区分大小写的
      • 关键字、函数名、列名(或字段名)、 列的别名(字段的别名)是忽略大小写的。
    • 推荐采用统一的书写规范:
      • 数据库名、表名、表别名、字段名、字段别名等都小写
      • SQL关键字、函数名、绑定变量等都大写

    SQL 注释信息

    # 单行注释
    
    /*
    多行注释
    */
    
    -- 单行注释,--后面必须要加一个空格🈳️
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    命名规则

    • 数据库、表名不得超过30个字符,变量名限制为29个
    • 必须只能包含 A-Z,a-z,0-9,_共63个字符
    • 数据库名、表名、字段名等对象名中间不要包含空格
    • 同个MysQL软件中,数据库不能同名;同一个库中,表不能重名;同一个表中,字段不能重名
    • 必须保证你的字段没有和保留字、数据库系统或常用方法冲突。如果坚持使用,请在SQL语向中使用 ` (着重号)引起来
    • 保持字段名和类型的一致性,在命名字段并为其指定数据类型的时候一定要保证一致性。假如数据类型在一个表里是整数,那在另一个表里可就别变成字符型了

  • 相关阅读:
    ChatGPT AIGC 完成各省份销售动态可视化分析
    禁止使用存储过程
    力扣 857. 雇佣 K 名工人的最低成本
    Linux MySQL+docker MySQL 搭建主主(练手)
    MySQL | 存储《康师傅MySQL从入门到高级》笔记
    Scala基础【HelloWorld代码解析,变量和标识符】
    春播秋收 “羊”鸣德州 一场“苏尼特羊”跨越千里的美丽邂逅
    Pythonnumpy多维数组
    面试题: Hive-SQL查询连续活跃登录用户思路详解
    接口测试--Postman变量
  • 原文地址:https://blog.csdn.net/Hsk_03/article/details/126492657