• MySQL的学习记录


    centos下MySQL下载地址: https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.17-1.el7.x86_64.rpm-bundle.tar

    安装过程记录:

    关键字说明:

    数据库:database

    数据库系统:DBS(Database System):是一种虚拟系统,见多种内容关联起来的称呼

    DBS = DBMS+DB

    DBMS:Database Management System,数据库管理系统,专门管理数据库

    DBA:Database Administrator,数据库管理员

    行/记录:row/record,本质是一个东西:都是指表中的一行(一条记录):行是从结构角度出发,记录是从数据角度出发。

    列/字段:column/field,本质是一个东西

    SQL

    SQL:Structured Query Language,结构化查询语言(数据以查询为主:99%是在进行查询操作)

    SQL分为三部分

        DDL:Data Definition Language,数据定义语言,用来维护存储数据的结构(数据库,表),代表指令:create,drop,alter等

        DML:Data Manipulation Language,数据操作语言,用来对数据进行操作(数据表中的内容),代表指令:insert,delete,update等:其中DML内部又单独进行了一个分类:DQL(Data Query Language:数据查询语言,如select)

        DCL:Data Control Language,数据控制语言,主要是负责权限管理(用户),代表指令:grant,revoke等

    SQL是关系型数据库的操作指令,SQL是一种约束,但不强制(类似W3C):不同的数据库产品(如Oracle,mysql)可能内部会有一些细微的区别。

    MySQL数据库

    MySQL数据库是一种c/s结构的软件:客户端。服务端若想访问服务器必须通过客户端(服务器一直运行,客户端都在需要使用时运行)。

    交互方式

        1、客户单连接认证:连接服务器,认证身份:mysql.exe-hPup

            windows操作:mysql.exe -hlocalhost -P3306 -uroot -p  

            linux操作:    

        2、客户端发送SQL指令

        3、服务器接收SQL指令:处理SQL指令:返回操作结果

        4、客户端接收结果:显示结果

           windows操作:show databases

           linux操作:

        5、断开连接(释放资源:服务器并发限制):exit/quit/q  

    MySQL服务器对象

    服务器是C语言编译好的结果,无法进行反编译,所以,无法完全了解服务器内部的内容:只能粗略的去分析数据库服务器的内部结构。

    将mysql服务器内部对象分成了四层:系统(DBMS)->数据库(DB)->数据表(Table)->字段(field)

    SQL的基本操作

    基本操作:CRUD(增删改查)

    将SQL的基本操作根据操作对象进行分类,分为三类:库操作,表操作(字段),数据操作

    库操作

    对数据库的增删改查。

    新增数据库

    基本语法

    Create database  数据库名字 [库选项];

    库选项:用来约束数据库,分为两个选项

        字符集设定:charset/character set 具体字符集(数据存储的编码格式):常用字符集:GBK和UTF8

        校对集设定:collate 具体校对集(数据比较的规则)

        """

        mysql> -- 双中下划线+空格:注释(单行注释),也可以使用#号

        mysql> -- 创建数据库

        mysql> create database mydatabase charset utf8;

        Query OK, 1 row affected(0.01 sec)

        """

    其中:数据库名字不能用关键字(已经被使用的字符)或者保留字(将来可能会用到的)

    如果非要使用关键字或者保留字,那么必须使用反引号(esc键下面的键在英文状态下的输出:`)

    中文数据库是可以的,但是有前提条件:保证服务器能够识别(不建议使用)

    解决方案:

        mysql> set names gbk

        mysql> create database 中国 charset utf8;

    当创建数据库的SQL语句执行后,发生了什么?

    1.  在数据库系统中,增加了对应的数据库信息

    2.会在保存数据的文件夹下:Data目录,创建一个对应数据库名字的文件夹(中文名称的数据库名称显示并不是中文,是特殊的编码)

    3.每个数据库下都有一个opt文件:保存了库选项

  • 相关阅读:
    程序中转站
    数据结构与算法题!(总索引)
    C语言常用函数-isdigit()判断字符是否为十进制数字函数
    C语言常用函数-iscntrl()判断字符是否为控制字符函数
    C语言常用函数-isalpha()判断字符是否为英文字母函数
    C语言常用函数-isalnum()判断字符是否为字母或数字函数
    C语言常用函数-isascii()判断字符是否为ASCII码函数
    NX二次开发-在NX状态区显示一行文本UF_UI_set_status
    NX二次开发-UFUN在NX提示区显示一行文本UF_UI_set_prompt
    NX二次开发-调NX的dxfdwg.exe转换器导出dxf,dwg
  • 原文地址:https://www.cnblogs.com/Guido-admirers/p/6283654.html
Copyright © 2020-2023  润新知