数据库水平分表
时间:2021-07-01 10:21:17
帮助过:4人阅读
int)
begin
declare sum int default 0; --
default 是指定该变量的默认值
declare i int default 0; --
循环下标
while i<=a DO --
循环开始
set i=i+1
;
set @sql_create_table =
concat(
‘CREATE TABLE IF NOT EXISTS tbCid_0‘
, i,
"(
`keyCid` varchar(32
) NOT NULL,
`mcc` varchar(3
) NOT NULL,
`mnc` varchar(2
) NOT NULL,
`lac` varchar(12
) NOT NULL,
`cid` varchar(12
) NOT NULL,
`country` varchar(32
) NOT NULL,
`province` varchar(32
) NULL DEFAULT NULL,
`city` varchar(32
) NULL DEFAULT NULL,
`district` varchar(32
) NULL DEFAULT NULL,
`road` varchar(64
) NULL DEFAULT NULL,
`street` varchar(64
) NULL DEFAULT NULL,
`pos` varchar(64
) NULL DEFAULT NULL,
`detailpos` varchar(256
) NULL DEFAULT NULL,
`longitude` varchar(32
) NULL DEFAULT NULL,
`latitude` varchar(32
) NULL DEFAULT NULL,
`idxAreaId` varchar(128
) NULL DEFAULT NULL,
`remark` varchar(256
) NULL DEFAULT NULL,
`mdfTm` datetime(0
) NOT NULL,
`mdfBy` varchar(45
) NOT NULL,
`crtTm` datetime(0
) NOT NULL,
`crtBy` varchar(45
) NOT NULL,
`idxOwnerId` varchar(128
) NULL DEFAULT NULL,
PRIMARY KEY (`keyCid`) USING BTREE,
INDEX `idxAreaId`(`idxAreaId`) USING BTREE,
INDEX `idxOwnerId`(`idxOwnerId`) USING BTREE
)ENGINE=InnoDB DEFAULT CHARSET=utf8;");
PREPARE sql_create_table FROM @sql_create_table;
EXECUTE sql_create_table;
end while; --
循环结束
--
可加循环结束后操作语句
end
--
第二步执行
--
执行存储过程
call sum1(100
);
--
第三步执行
--
删除存储过程
drop procedure if exists sum1;
3. 数据迁移
4. 查询修改
-- 未完待续
数据库水平分表
标签:索引 效率 concat date rom set span arc 就会