Home > Backend Development > PHP Tutorial > 怎么PHP根据uid计算出来插入哪个数据库

怎么PHP根据uid计算出来插入哪个数据库

WBOY
Release: 2016-06-13 12:03:33
Original
1082 people have browsed it

如何PHP根据uid计算出来插入哪个数据库?
我现在要实现一个功能:
要通过计算规则计算出来200w用户的uid,对应insert日志不同的表,如何计算出来,是的表均衡处理?
------解决方案--------------------
uid 通常是数字,取模就可以了
------解决方案--------------------
这需要代码吗?
令 $uid 为 uid 的值, $m 为日志表数
则表名 $tbl = '前缀' . ($uid % $m)

------解决方案--------------------
不知道你的多个表的命名规则 是什么? 是 200W 个用户,随机分配日志表,还是这个用户被创建时,就要指定放到哪张表?

1. 如果是随机的话,最好表的命名有一定的规则 ,比如:log001 , log002 ..., log100 这样子。直接用 rand() 加工一个数字出来,再拼成表名称;
2. 如果用户被创建时,就指定了写哪个表,就更好办了,在用户登录时,就把这个表名写到 session 中,写日的时候,直接拼接;
3. 如果,你想根据用户的第一位字符来确定,也可以采用方法 2 ;
------解决方案--------------------
你先要定义好一个表,然后

for($i-0; $i<300; $i++)<br />  mysql_query("carete table log_$i select * from 表 where 1=0“);<br />
Copy after login
300个表就建好了

插入时的表名计算我在 #6 已经给了

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template