MySql数据库基础

  • 数据库基本操作

    1)创建数据库

    基本语法: create database 数据库名称
    创建应该名称为itcast的数据库。sql语法如下:

     ``create database ` itcast `;``
    

    需要主要的是,为了避免用户自定义的名称与系统命令冲突,最好使用反引号(``)包括数据库名称/字段名称和数据表名称
    如果创建数据库存在,则程序会报错,为了防止此情况发生,再创建数据库可以使用“if not exists”,语法如下:

    recate database if not exists `itcast` //这段语句表示若数据库中不存在名称为itcast数据库时,创建该数据库,否则不执行创建数据库itcast的操作

    2)查看数据库

    再完成创建数据库后,若要查看数据库的信息,可以使用该语句

     ``show caeate database 数据库名称``
    

    查看MySql数据库服务器已经存在的数据库

     ``show databases``
    

    3)选择数据库

    数据库服务器可能存在多个数据,选择数据库的命令语法:

     `` use 数据库名称 ``
    

    4)删除数据库

    数据库的删除操作不仅会删除里面的数据,还会回收原来分配的存储空间

     ``drop database 数据库名称``
    

    在使用“drop database” 命令删除数据库时,若删除数据库不存在,MySql服务器会报错,因此,可以再删除数据库时,使用“if existe”

     ``drop database if exists `itcase` 
     //若删除MySql数据库服务器中存在数据库itcase,则删除该数据库,否则不执行删除 数据库itcasse的操作``
    
  • 数据类型

数据表在创建时,需为每个字段选择数据类型,而数据类型的选择则决定着数据的存储格式,有效范围和对应的限制

mysql提供了多种数据类型,主要分为3类

  • 数值类型

  • 字符串类型

  • 日期与时间类型

    1)数值类型

    MySql提供了很多数值类型,大体分为整数类型和浮点类型
    整数类型根据取值范围分为int,smallint等,
    浮点类型又分为float,declmal等。

    整数类型
    MySql数据库基础_第1张图片

    浮点类型
    MySql数据库基础_第2张图片

    decimal类型的有效取值范围是有M和D决定。其中,M和D决定。其中,M表示数据长度,D表示小数点后的长度。例如,数据类型设为 DECIMAL(4,1),将 3.1415926插入到数据库后,显示的结果为 3.1。

    字符串类型

    项目开发时,需要存储的数据多数是字符串格式的,因此 MySQL 提供了许多用于存储字符串的数据类型。
    MySql数据库基础_第3张图片
    MySql数据库基础_第4张图片
    BLOB和TEXT都是用于存储大量数据的,但二者的区别在于,对于存储的数据进行排序和比较时,BLOB是区分大小写的,而TEXT是不区分大小写的

    日期与时间类型
    为方便在数据库中存储日期和时间,MySQL 提供了几种相关的数据类型,这些数据类型可以根据实际开发灵活选择。
    MySql数据库基础_第5张图片

2)存储类型

在数据库中,数据表设计的是否合理直接影响着数据库的功效,而在设计数据表时存储引擎的选择,则决定着数据表具有哪些功能。接下来将对 MySQL 常用存储引擎及其作用进行介绍。

  • InnoDB 存储引擎

  • MyISAM 存储引擎

  • MEMORY 存储引擎

  • ARCHIVE 存储引擎

    InnoDB 引擎

    InnoDB 存储引擎自 MySQL 5.5 版本起被指定为默认的存储引擎,用于完成事务、回滚、崩溃修复和多版本并发控制的事务安全处理。同时也是 MySQL中第一个提供外键约束的表引擎,尤其对事务处理的能力,是 MySQL 其他存储引擎所无法与之比拟的。

    InnoDB 的优势在于提供了良好的事务管理、崩溃修复能力和并发控制。

    MyISAM 存储引擎

    MyISAM 存储引擎是基于 ISAM 存储引擎发展起来的,它不仅解决了 ISAM的很多不足,还增加了很多有用的扩展。

    其中,对于使用 MyISAM 存储引擎的数据表,会被存储成3个文件,文件名与表名相同,文件扩展名分别为 frm、myd 和 myi。
    MySql数据库基础_第6张图片
    相比 InnoDB ,MyISAM 的优点是处理速度快;缺点是不支持事务处理等

    MEMORY 存储引擎

    MEMORY存储引擎,是MySQL中的一类特殊的存储引擎。在MEMORY存储引擎的表中,所有数据都保存在内存中,因此数据的处理速度快,但不能持久保存(程序出错或关机时会丢失数据),而且不能存储太大的数据。对于需要很快的读写速度,但数据量小、不需要持久保存的数据来说,MEMORY存储引擎是一个理想的选择。

    ARCHIVE 存储类型

    ARCHIVE 存储引擎适合保存数量庞大、长期维护但很少被访问的数据。对于使用 ARCHIVE 存储引擎的数据表,数据存储时会利用 zlib 压缩库进行压缩,在记录被请求时会实时进行解压。需要注意的是,ARCHIVE 存储引擎仅仅支持查询和插入操作,且由于不支持数据索引,查询效率比较低。

你可能感兴趣的:(php,mysql)