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. [数据库连接池二]Java数据库连接池--C3P0和JDNI.

    前言:上一篇文章中讲了DBCP的用法以及实现原理, 这一篇再来说下C3P0和JDNI的用法. 1.1.C3P0数据源 C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规 ...

  2. redis基本配置和相关设置

    redis-cli:the redis command line interface command line usage: $redis-cli incr mycounter 输出的结果只会显示在终 ...

  3. 浅谈JAVA集合框架

    浅谈JAVA集合框架 Java提供了数种持有对象的方式,包括语言内置的Array,还有就是utilities中提供的容器类(container classes),又称群集类(collection cl ...

  4. SVN批处理更新文件夹

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

  5. Javascript函数中的高级运用

    先介绍一下js中的高阶函数,所谓的高阶函数就是,一个函数中的参数是一个函数或者返回的是一个函数,就称为高阶函数. js中已经提高了一下高阶函数,使用起来非常棒,当然我们也可以自己实现,我介绍几种ES5 ...

  6. 真正的mybatis_redis二级缓存

    网上流传的代码缓存失效存在严重问题. 思路....以后再细说 目前的方案还不够完美,失效力度控制不够细. 主要代码 import java.io.BufferedReader; import java ...

  7. java向mysql数据库插入数据显示乱码的问题

    在做一个java web工程时,有时会碰到在向数据库添加数据库时,结果出现乱码”???“的问题.针对该问题的主要解决办法就是: 一.确保是否添加了字符集过滤器: 在java web工程中的web.xm ...

  8. Floyd算法(二)之 C++详解

    本章是弗洛伊德算法的C++实现. 目录 1. 弗洛伊德算法介绍 2. 弗洛伊德算法图解 3. 弗洛伊德算法的代码说明 4. 弗洛伊德算法的源码 转载请注明出处:http://www.cnblogs.c ...

  9. 使用office生成PDF文件

    网络上有很多word转pdf的软件,功能效果不尽相同,对于想要把word转换成pdf格式的网友来说,一款实用强大的工具是必不可少的,踏破铁鞋无觅处,原来office2010就有符合你要求的功能.PDF ...

  10. Android基于mAppWidget实现手绘地图(一)--简介

    http://lemberg.github.io/mappwidget/user_guide.html 最近在看一些导游类应用,发现一些景区的导览图使用的完全是自定义地图,也就是手绘地图.这种小范围使 ...