mysql引擎:
  archive(档案)[数据插入以后不能被修改,只读]
  blackhole[这种写操作是删除数据,读操作是返回空白记录]
  CSV[在储存数据时以逗号作为数据项之间的分隔符]
  example[示例(存根)储存引擎]
  Falcon[用来进行处理事务的储存类型]
  federated[用来访问远程数据表的储存引擎]
  InnoDB[具备外键支持功能的事务处理引擎]
  memory[内存里的数据表]
  merge[用来管理多个MyISAM数据表构成的数据表集合(merg-myisam)]
  myisam默认的储存类型
  NDB[mysql clustor 专用引擎]

第二部分:
  no_engine_substitution设置不用默认的引擎(当创建数据表类型时不成功)
  使用default-storage-engine启动服务器,使用一种默认的储存引擎
  show create table table_name=select condition from information_schema.tables[查看默认引擎]
  使用min-Rows=n对memory引擎的优化
  eg:
    create table table_name{...}engine=memory min-rows=100;
  使用max-rows和avg-row-length控制myisam的大小
  改变数据表的引擎:alter table table_name type[engine]=type_name
  对于创建表格时使用if not exist可以检查是否具有相同的表格,但具有一定的风险,使用drop table if exist再执行create table

临时表:
  创建临时表格:create temporary table table_name (也支持各种引擎),暂时性表的生命周期一般是在服务器停止临时表类型
      可以和永久性表格同名,但是永久性表格会暂时性的失效,直到暂时性表失去效果。

使用like和select从其他数据表中创建新的数据表
  create table table_name like _table_name,这样创建的新数据表具有相同的类型,索引,顺序,
  insert into table_name select ...[select 后插入的是表数据或者其他数据],可以使用这个方法创建
  一个临时性的副本:temporary
  向副本中插入其他表数据eg:insert into new_table_name select * from table_name[where...];
  使用create table table_name select 将上面两种类型一步到位,但是这种情况的数据可能对视索引或者可能失去数据属性
  但是其中可以使用cast()强制类型.
  在create table 部分提供明确定义,之后再select 部分使用那些定义检索:
  create table mytd1(i int unsigned,t time,d decmal(10,5))
  select i as i,cast(curtime() as time) as t,-----------------(这段话没看懂意思==。)
  ps:select 字句选择填入数据要求。

merge数据表:
  merge将myisam当做一个连接单元来处理,构成一个merge数据表的各个成员具有相同的顺序,数据类型,索引等,
  eg:
    create table log_ccyy
    ( dt datetime not null,
     info varchar(100) not null,
     index(dt)
    );
    ccyy是年份的意思,假设创建log_2010,log_2011,以后在创建一个merge类型的:
    create table log_merge
    (dt datetime notnull,
    info varchar(100) not null
    index(dt)

    )engine=merge union=(log_2010,log_2011)
    [insert_method=[no\first\last]];
    在创建新的merge单元的时候(myisam表类型),插入的位置first或者last或者no不允许插入新的数据表
    log_merge中加入数据表log_2012:
              alter table log_merge=(log_2010,log_2011,log_2012)

mysql学习笔记 第四天的更多相关文章

  1. Mysql学习笔记(四)字符串函数

    PS:终于看完了字符串函数,心都快碎了...涉及的函数真是太多了...感觉这里的字符串函数和JAVA里的基本都差不多了...基本上算是掌握了,但是想全记住那是不太可能的... 学习内容: 字符串函数的 ...

  2. MySQL学习笔记十四:优化(1)

    SQL优化 1.查看各种SQL执行的频率 mysql> show status like 'Com_select';--Com_insert,Com_delete,connections(试图连 ...

  3. Mysql学习笔记(四)聊聊数据库索引

    小心情(可直接跳到分割线后) 今天心情好些了.一些浓的化不开的坏情绪,也渐渐的在晚上解决掉一个复杂的逻辑问题后,渐渐消散了. 今天中午去吃饭的时候,坤哥漫不经心的说:'我这么多年终于悟出了一个道理,人 ...

  4. 菜鸟的MySQL学习笔记(四)

    MySQL中的运算符和函数: 1.字符函数: 2.数值运算符与函数: 3.比较运算符与函数: 4.日期时间函数: 5.信息函数: 6.聚合函数: 7.加密函数等:   6-1.字符函数: CONCAT ...

  5. MySql学习笔记(四)

    MYSQL如何查看系统帮助: 1.查看官方API文档: http://dev.mysql.com/doc/ 2.通过Mysql中的help命令 比如:help create database MYSQ ...

  6. MySQL学习笔记(四)悲观锁与乐观锁

    恼骚 最近在搞并发的问题,订单的异步通知和主动查询会存在并发的问题,用到了Mysql数据库的 for update 锁 在TP5直接通过lock(true),用于数据库的锁机制 Db::name('p ...

  7. mysql学习笔记(四):group by,limit,to_days(),from_days()

    1. [Err] 1055 - Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated co ...

  8. MYSQL学习笔记 (四)GROUP BY与HAVING用法

    注意:select 后的字段,必须要么包含在group by中,要么包含在having 后的聚合函数里. 1. GROUP BY 是分组查询, 一般 GROUP BY 是和聚合函数配合使用 group ...

  9. MySQL学习笔记(四)——分组数据group by子句和having子句

    分组允许把数据分为多个逻辑组,以便对每个组进行聚集计算. 例如我们查下每个系里有多少名学生: 在使用group by 子句之前,还需要知道一些规定: 1. group by 子句可以包含任意数目的列, ...

随机推荐

  1. 360路由器刷openwrt、不死uboot、双系统 、wifi中继

    该类教程网上有很多,但是很多不全,给小白用户造成了很多困扰.我也是按照网上的教程刷了半天,才熟悉了是怎么个回事.这里整理成教程. 注意: 请看教程步骤走,不要跳跃性刷机.不懂的术语.软件,若本文无介绍 ...

  2. Atitit  基于meta的orm,提升加速数据库相关应用的开发

    Atitit  基于meta的orm,提升加速数据库相关应用的开发 1.1. Overview概论1 1.2. Function & Feature功能特性1 1.2.1. meta api2 ...

  3. SVN批处理更新文件夹

    SVN批处理更新文件夹 "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:update /path:&quo ...

  4. C 中读取键盘码

    键盘码在底层开发中经常用到,有时候我们会忘记它们,就要急急忙忙的去找 键-码 对照表查看,其实程序可以自己打印出 键-码 对应值 #include <stdio.h> #include & ...

  5. CCNA基础 IP地址子网划分

    计算机是一个非常神奇的物品,它的核心算法是凌驾于任何代码架构.然而互联网网络( Internat )作为整个生态的基础资源.什么?你还不会子网划分? 没关系,看到子网掩码不要怕.因为它无非就是问你 & ...

  6. Shell最多可以输入多少个参数?

    在脚本编写过程中,通常会涉及到参数的输入.譬如,sh 1.sh 10 20,在执行1.sh这个脚本中,10即为第一个参数,20即为第二个参数.有时,就会有这个疑惑,即shell脚本最多可以支持多少个变 ...

  7. 百度地图JavaScript API自定义覆盖物、自定义信息窗口增删时的显示问题

    项目中,需求:在百度地图上实时画出车辆,并能点击车辆弹出信息框查看实时信息. 实现:通过不停的画覆盖物并删除掉.点击覆盖物时弹出信息窗口. 问题:删除掉覆盖物后信息窗也删除掉了.因为信息窗是建立在覆盖 ...

  8. 图像映射map

    <map>标签:带有可点击区域的图像映射 定义一个客户端图像映射.图像映射(image-map)指带有可点击区域的一幅图像. 效果图: 点击相应蓝色标签可进入详情页面浏览. 代码: < ...

  9. Sql Server优化之索引提示----我们为什么需要查询提示,Sql Server默认情况下优化策略选择的不足

    环境: Sql Server2012 SP3企业版,Windows Server2008 标准版 问题由来: 最近在做DB优化的时候,发现一个存储过程有非常严重的性能问题, 由于整个SP整体逻辑是一个 ...

  10. Windows Azure HandBook (8) Azure性能测试(1)

    <Windows Azure Platform 系列文章目录> 我们在项目上线之前,常常需要对部署在微软云上的应用软件做压力测试. 一般的压力测试,常常在本地计算机安装压力测试软件 (比如 ...