zoukankan      html  css  js  c++  java
  • Mysql分表:Merge

    merge是Mysql最简单的一种分表,Mysql自带的一个分表功能,Merge表并不保存数据,Merge表和分表是对应映射关系。
    demo:

    创建分表:
    CREATE TABLE `user1` (
    `id` INT NOT NULL,
    `user_name` VARCHAR(45) NOT NULL,
    `password` VARCHAR(45) NOT NULL,
    `create_time` TIMESTAMP NULL,
    `update_time` TIMESTAMP NULL,
    PRIMARY KEY (`id`),
    KEY `user_name` (`user_name`),
    KEY `create_time` (`create_time`)
    )ENGINE = MyISAM;
    CREATE TABLE `user2` like user1;
    CREATE TABLE `user3` like user1;

    创建主表:
    CREATE TABLE `users` (
    `id` INT NOT NULL,
    `user_name` VARCHAR(45) NOT NULL,
    `password` VARCHAR(45) NOT NULL,
    `create_time` TIMESTAMP NULL,
    `update_time` TIMESTAMP NULL,
    PRIMARY KEY (`id`),
    KEY `user_name` (`user_name`),
    KEY `create_time` (`create_time`)
    )ENGINE = MERGE UNION = (`user1`,`user2`,`user3`);


    如何使用:
    插入(INSERT)数据时,需要根据给定的路由策略将新数据分别插入不同的子表,此处采用对id进行模3计算(可能结果为0、1、2)来决定插入哪个子表。
    删除(DELETE)、查询(SELECT)、修改(UPDATE)、清空(TRUNCATE)等操作都可以通过总表users完成。

  • 相关阅读:
    590. N-ary Tree Postorder Traversal
    C++——指针3
    C++——指针2-指向数组的指针和指针数组
    C++——指针1
    C++——二维数组和对象数组
    C++——一维数组
    C++——程序的结构
    C++——类与对象
    C++——函数
    C++——简单程序设计
  • 原文地址:https://www.cnblogs.com/TheGreatDead/p/10751345.html
Copyright © 2011-2022 走看看