拆分表的原理和好处就不说了。百度一下很多。直接上代码
设计数据库的时候,同样一个表,如表名是take_record,复制这个表,根据16位进制命名:take_record_0, take_record_1 一直到take_record_f
每个表的字段都是相同的。
然后用户登录的时候,保存一个session,
session('first',substr(md5($res['id']),0,1),'pc'); //TP框架的写法
这个session是保存用户uid的一个md5的值,然后截取第一个字母。
在查询表的时候,设置选择哪一个数据库:
$takeRecordTable = "take_records_" . session('first','','pc');
这样操作就可以达到拆分表操作的效果。