MySQL数据库基础

    MySQL数据类型

      整数类型:TINYINT   SMALLINT   MEDIUMINT   INT   BIGINT

      属性:UNSIGNED

      长度:可以为整数类型指定宽度,列如:INT(11)、对大多数应用是没有意义的,它不会限制值的合法范围,只会影响显示字符的个数。

      实数类型:FLOAT   DOUBLE   DECIMAL

      DECIMAL可存储比BIGINT还大的整数;可以用于存储精确的小数FLOAT和DOUBLE类型支持使用标准的浮点进行近似计算。

      字符串类型:VARCHAR   CAHR  TEXT   BLOB

      VARCHAR类型用于存储可变长字符串,它比定长类型更节省空间

      VARCHAR使用1或2个额外字节记录字符串的长度,列长度小于255字节,使用一个字节表示,否则用2个

      varchar长度,如果存储内容超过指定长度,会被截断。、

      char是定长的,根据定义的字符串长度分配足够的空间。char会根据需要采用空格进行填充以方便比较。

      char适合存储很短的字符串,或者所有值都接近同一个长度

      char长度,超出设定的长度,会被截断

      对于经常变更的数据,CHAR比VARCHAR更好,CHAR不容易产生碎片,对于非常短的列,CHAR比VARCHAR在存储空间上更有效率只分配真正需要的空间,更长的列会消耗更多的内存

    MySQL基础操作

       连接数据库:mysql -u -p -h -p    用户名   密码   IP   端口

       show    create   use   drop  delete  select  update

    MySQL存储引擎

        InnoDB:默认事务型引擎,最重要最广泛的存储引擎,性能非常优秀,数据存储在共享表空间,可以通过配置分开。对主键查询的性能高于其他类型的存储引擎,内部做了很多优化,从磁盘读取数据时自动在内存构建hash索引,插入数据时自动构建插入缓冲区。

        通过一些机制和工具支持真正的热备份,支持崩溃后的安全回复,支持行级锁,支持外键。

        MyISAM:5.1版本以前,MyISAM是默认的存储引擎。拥有全文索引、压缩、空间函数

        不支持事务和行级锁,不支持崩溃后的安全恢复。表存储在两个文件,MYD和MYI,分别存储数据和索引。设计简单,某些场景下性能很好。

      其他表引擎:Archive   Blackhole   CSV   Memory

    MySQL锁机制

     锁是计算机协调多个进程或线程并发访问某一些资源的机制。

     共享锁(读锁)/排它锁(写锁)

      读锁:针对同一份数据,多个读操作可以同时进行而不会互相影响

      写锁:当前写操作没有完成前,它会阻断其他线程对当前数据的修改和读取。

    MySQL事务处理、触发器

      事务:原子性----一组操作,要么全部执行成功,要么全部都不执行。

         隔离性----在所有的操作没有执行完毕之前,其他会话不能够看到中间改变的过程。

         一致性----事务发生前和发生后,数据的总额依然匹配

         持久性----事务所执行的结果不能撤销 

       start   transaction;开启事务

          要执行的SQL语句

       Commit   提交

       rollback    回滚

       当一个事务提交或回滚之后就结束事务。 

      触发器:监视某种情况并触发某种操作

        Create trigger triggerName

        After/before insert/update/delete  on 表名

        For each row #这句话是固定的

        Begin

        Sql语句;  # 一句或多句,insert/update/delete范围内

        End;

        删除触发器的语法:

        Drop trigger 触发器名

        查看触发器

        Show triggers

PHP面试 MySQL数据库基础的更多相关文章

  1. php面试专题---15、MySQL数据库基础考察点

    php面试专题---15.MySQL数据库基础考察点 一.总结 一句话总结: 注意:只写精品 1.mysql定义int(3),那么我存1234就错了么? 不是:无影响:只会影响显示字符的个数:可以为整 ...

  2. mysql数据库基础的简单操作指南

    最近在学习mysql,本文是做的关于mysql学习的笔记,跟大家分享一下,希望对大家学习mysql知识有所助益.mysql现在几乎已经成了网站建设的主流数据库,很多php网站系统都采用了mysql数据 ...

  3. MySQL数据库基础

    MySQL数据库基础 本文的所有操作是基于CMD环境,MySQL通过在命令行中输入SQL语句对数据库进行操作.配置问题可参考<打通MySQL的操作权限>中的内容,该文算是针对前期的环境配置 ...

  4. Mysql数据库基础学习笔记

    Mysql数据库基础学习笔记 1.mysql查看当前登录的账户名以及数据库 一.单表查询 1.创建数据库yuzly,创建表fruits 创建表 ) ) ,) NOT NULL,PRIMARY KEY( ...

  5. Mysql数据库基础操作

    Mysql数据库基础操作 在mysql数据库中开启使用tab键补全功能 1)修改主配置文件/etc/mysql/my.cnf(mysql和mariadb目录有些不同) vim /etc/mysql/m ...

  6. mysql数据库基础-2019-9-10(随堂笔记)

    mysql数据库基础 在cmd情况下启动mysql数据库:(配置path环境变量后可忽略) 运行mysql1. 进入mysql路径2. 执行:mysql -uroot -p,安装时的密码 1.数据库& ...

  7. MySQL数据库--基础简述

    MySQL数据库--基础简述 1.15.1 MySQL简介 Mysql是最流行的RDBMS(Relational Database Management System:关系数据库管理系统),特别是在W ...

  8. MySQL数据库基础知识及优化

    MySQL数据库基础知识及优化必会的知识点,你掌握了多少? 推荐阅读: 这些必会的计算机网络知识点你都掌握了吗 关于数据库事务和锁的必会知识点,你掌握了多少? 关于数据库索引,必须掌握的知识点 目录 ...

  9. 26.MySQL数据库基础

    MySQL数据库基础 目录 MySQL数据库基础 数据库的概念 数据 表 数据库 数据库的管理系(DBMS) 数据库系统 访问数据库的流程 数据库系统发展史 当今主流数据库介绍 关系数据库 关系数据库 ...

随机推荐

  1. 部署Jenkins完整记录

    Jenkins通过脚本任务触发,实现代码的自动化分发,是CI持续化集成环境中不可缺少的一个环节.下面对Jenkins环境的部署做一记录.-------------------------------- ...

  2. thinkphp 相关

    路径重写,既模式2 需要.htaccess文件放到index.php同级, http.config文件 中当前项目目录配置  AllowOverride All LoadModule rewrite_ ...

  3. Jenkins构建触发器的区别

    Build periodically:定时进行项目构建或执行(它不care源码是否发生变化),配置如下: 0 2 * * *  (每天2:00 必须build一次源码) 如果是要定时执行脚本,需要选择 ...

  4. Cocos2d 之FlyBird开发---GameData类

    |   版权声明:本文为博主原创文章,未经博主允许不得转载. 现在是大数据的时代,绝大多数的游戏也都离不开游戏数据的控制,简单的就是一般记录游戏的得分情况,高端大气上档次一点的就是记录和保存各方面的游 ...

  5. 利用程序随机构造N个已解答的数独棋盘

    高级软件工程第二次作业:利用程序随机构造N个已解答的数独棋盘,代码如下: package SudokuGame; /** * 解决这个问题使用的是回溯+剪枝的算法 * 基本思想:不断地将每个格子可填入 ...

  6. viewport的深入调研

    1.viewport概念:viewport就是设备的屏幕上能用来显示我们的网页的那一块区域. viewport的默认值980px或1024px等,以下是浏览器的默认viewport宽度 2.css中的 ...

  7. java虚拟机规范(se8)——class文件格式(一)

    第四章 class文件格式 本章介绍了java虚拟机的class文件格式.每一个class文件包含一个单独的类或者接口的定义.虽然类和接口不一定都定义在文件中(比如类和接口亦可以通过类加载器直接生成) ...

  8. 【报错】解决logstash tracking_column not found in dataset. {:tracking_column=>"updated_time"}问题

    今天用logstash同步数据库记录到elasticsearch时候出现错误,错误信息如下: [2019-10-12T23:51:00,529][WARN ][logstash.inputs.jdbc ...

  9. 【记录】linux 文件权限的查看和修改

    从上图可以看出每个文件权限与类型都是不一样的,如果对各个字母表达的含义不了解,那么看的真是一脸懵逼. 别急,具体解释如下: d rwx  rwx  rwx -  rwx  r--  rw- 第一列含义 ...

  10. java 三元运算符

    /* 一元运算符:只需要一个数据就可以进行操作的运算符 如:取反! 自增++ 自减 -- 二元运算符:需要两个数据才可以进行操作的运算符 如:加法+ 赋值= 三元运算符: 需要三个数据才可以进行操作的 ...