zoukankan      html  css  js  c++  java
  • Mysql笔记

    SQL分类
    1. 数据查询语言:DQL 代表指令: select/show
    2. 数据操作语言:DML 代表指令: insert/update/delete
    3. 事务处理语言:TPL 代表指令: begin/transaction/commit/rollback
    * 不是所有的关系型数据库都提供事务安全处理
    4. 数据控制语言:DCL 代表指令: grant/revoke
    * 专门用于权限管理
    5. 数据定义语言:DDL 代表指令: create/drop/alter
    * 专门用于结构管理

    启动mysql:net start mysql
    关闭mysql:net stop mysql
    登陆mysql:mysql [-hlocalhost] -uroot -p
    退出mysql:exit,q,quit

    Mysql服务端架构有一下几层构成
    1. 数据库管理系统(最外层):DBMS:专门管理服务器端的所有内容
    2. 数据库(第二层):DB,专门用于存储数据的仓库
    3. 二维数据表(第三层):Table,专门用于存储具体实体的数据
    4. 字段(第四层):Field,具体存储某种类型的数据(实际存储单元)

    创建数据库:create database 数据库名字 [库选项]
    字符集:charset 字符集,如果不指定默认是DBMS(安装时候指定的,校对集随字符集)
    校对集:collate校对集

    显示部分 匹配模式 模糊查询
    获取以my开头的全部数据库:my%
    获取m开头,后面第一个字符不确定,最后为database的数据库:m_database
    获取以database结尾的数据库:%database

    -- 数据库操作 --
    显示数据库创建语句
    #show create database 数据库名字;
    显示数据表创建语句
    #show create table 数据表名字G;

    修改数据库字符集:字符集和校对集
    alter database 数据库名字 charset=字符集
    #create database mydatabase charset gbk;

    -- 数据表操作 --
    存储引擎:mysql提供的具体存储数据的方式,默认有一个innodb(5.5之前默认是myisam)
    复制已有表结构
    #create table 新表名 like 数据库.表名;
    每当一张数据表创建,那么会在对应的数据库下创建一些文件(与存储引擎有关)
    innodb存储引擎所有文件都在外部的ibdata文件中
    @多维度修改表
    修改表名
    #rename table 旧表名 to 新表名;
    修改表选项
    #alter table 表名 表选项 [=] 新值;
    新增字段
    #alter table 表名 add 新字段名 列类型 [列属性] [位置 first/after] 字段名;
    eg: alter table my_student add age int;--默认最后
    first:默认增加到第一个字段
    after:需要指定放在哪个字段之后
    eg:alter table my_student add age int after id;
    修改字段名
    #alter table 表名 change 旧字段名 新字段名 新字段类型;
    eg:alter table user5 change age nj int;
    修改字段类型
    #alter table 表名 modify 字段名 新类型 [新属性] [新位置]
    alter table user5 modify nj2 varchar(60);--可以通过修改字段名修改
    删除字段
    #alter table 表名 drop 字段名;
    删除表结构
    #drop table 表名[,表名2...];


    字符集:
    Mysql.exe与Mysqld.exe之间的处理关系一共分为三层
    客户端传入数据给服务端:client:character_set_client
    服务端返回数据给客户端:server:character_set_results
    客户端与服务端之间的连接:connection:character_set_connection

    set names 字符集的本质:就是一次性打通三层关系的字符集,变得一致
    在系统中有三个变量来记录着这三个关系对应的字符集:show variables like 'character_set%';
    mysql> set names gbk;
    mysql> show variables like 'character_set%';
    +--------------------------+------------------------------------------------------+
    | Variable_name | Value |
    +--------------------------+------------------------------------------------------+
    | character_set_client | gbk |
    | character_set_connection | gbk |
    | character_set_database | utf8 |
    | character_set_filesystem | binary |
    | character_set_results | gbk |
    | character_set_server | utf8 |
    | character_set_system | utf8 |
    | character_sets_dir | F:StudySoftWaremysql-5.7.27-winx64sharecharsets |
    +--------------------------+------------------------------------------------------+
    8 rows in set, 1 warning (0.02 sec)
    解析:
    character_set_client :客户端传入数据
    character_set_connection:连接层
    character_set_database:当前数据库存储方式
    character_set_results:结果返回的字符集
    修改服务器端变量名的值
    set character_set_client=gbk;

  • 相关阅读:
    5 Things Every Manager Should Know about Microsoft SharePoint 关于微软SharePoint每个经理应该知道的五件事
    Microsoft SharePoint 2010, is it a true Document Management System? 微软SharePoint 2010,它是真正的文档管理系统吗?
    You think you use SharePoint but you really don't 你认为你使用了SharePoint,但是实际上不是
    Introducing Document Management in SharePoint 2010 介绍SharePoint 2010中的文档管理
    Creating Your Own Document Management System With SharePoint 使用SharePoint创建你自己的文档管理系统
    MVP模式介绍
    权重初始化的选择
    机器学习中线性模型和非线性的区别
    神经网络激励函数的作用是什么
    深度学习中,交叉熵损失函数为什么优于均方差损失函数
  • 原文地址:https://www.cnblogs.com/lszbk/p/12312514.html
Copyright © 2011-2022 走看看