zoukankan      html  css  js  c++  java
  • Mysql运用MERGE引擎进行分表

    首先需要注意的:

    1、基础表必须是MYISAM引擎的表,因为MERGE引擎只适用于MYISAM表

    2、union的基础表必须是存在的表。

    3、MERGE的时候只能引用同一个库种存在的基础表。

    4、各个基础表的结构(索引、引擎、列、字符集等)需要一致。

    5、类似的基础表和merge表 CHARSET=utf8 等约定需要一致。

    例子:

    基础表test1:

    CREATE TABLE `test1` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `user_id` varchar(255) DEFAULT NULL,
      `commodity_code` varchar(255) DEFAULT NULL,
      `count` int(11) DEFAULT '0',
      `money` int(11) DEFAULT '0',
      PRIMARY KEY (`id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
    

    基础表test2: 

    CREATE TABLE `test2` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `user_id` varchar(255) DEFAULT NULL,
      `commodity_code` varchar(255) DEFAULT NULL,
      `count` int(11) DEFAULT '0',
      `money` int(11) DEFAULT '0',
      PRIMARY KEY (`id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
    

    merge表:

    CREATE TABLE `test` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `user_id` varchar(255) DEFAULT NULL,
      `commodity_code` varchar(255) DEFAULT NULL,
      `count` int(11) DEFAULT '0',
      `money` int(11) DEFAULT '0',
      PRIMARY KEY (`id`)
    ) ENGINE=MERGE UNION=(test1, test2) INSERT_METHOD=LAST CHARSET=utf8;
    

    这样就可以实现合并表。

  • 相关阅读:
    汪博士解读PMP考试
    ASP.NET编程实战宝典(光盘内容另行下载,地址见书封底)
    [模板]tarjan算法求SCC
    [POJ 3071]Football[概率DP]
    [数学]根式有理化[高中数学技巧]
    [平面几何]角格点问题
    [数学]对数均值不等式
    [模板][快速排序&归并排序]
    [POJ]P3126 Prime Path[BFS]
    每日一题_191219
  • 原文地址:https://www.cnblogs.com/qqq9527/p/14355872.html
Copyright © 2011-2022 走看看