Home  >  Article  >  Backend Development  >  PHP operation mysql database simple table splitting principle - with detailed steps

PHP operation mysql database simple table splitting principle - with detailed steps

WBOY
WBOYOriginal
2016-08-08 09:24:37926browse
<?php
ini_set("memory_limit","-1");
$db_host=&#39;localhost&#39;;
$db_user=&#39;root&#39;;
$db_password=&#39;root&#39;;
$db_name=&#39;test&#39;;
$mysqli = new mysqli($db_host, $db_user, $db_password, $db_name); 
// 新建插入100个表
// for ($i=0; $i < 10; $i++) { 
// 	$sql=&#39;CREATE TABLE test.article_&#39;.$i.&#39; (`id` BIGINT( 20 ) NOT NULL ,`subject` VARCHAR( 200 ) NOT NULL ,`content` TEXT NOT NULL ,PRIMARY KEY ( `id` )) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci&#39;;

//  $re=$result=$mysqli->query("$sql");
// }

//新建一个id存储表,其实也没必要非得叫id,如果业务量大按年月日也行, 按增量也行。
// CREATE TABLE `test`.`create_id` (`id` BIGINT( 20 ) NOT NULL AUTO_INCREMENT PRIMARY KEY) ENGINE = MYISAM;

//新建一个总表 ,有没有必要自己体会(后期用到分页,统计的时候直接调用就行,查询的速度还是很快的,如果不想要这个表,那就用的时候再用union查询:把所有表名放入数组中,然后foreach 在拼装sql .union 去。所以还不如开始的时候做好呢)
// CREATE TABLE `article_total` (
//   `id` bigint(20) NOT NULL,
//   `subject` varchar(200) NOT NULL,
//   `content` text NOT NULL,
//   PRIMARY KEY (`id`)
// ) ENGINE=MRG_MyISAM DEFAULT CHARSET=utf8 UNION=(`article_0`,`article_1`,`article_2`,`article_3`);
// Query OK, 0 rows affected


function get_AI_ID(){
	global $mysqli;
	
	$mysqli->query('insert into create_id (id) values("")');
<span style="white-space:pre">	</span>// 返回插入id值
	return mysqli_insert_id($mysqli);
}

function new_article(){
	global $mysqli;
	echo $id=get_AI_ID();
	echo $table_name=get_table_name($id);
	$sql = "insert into {$table_name} (id,subject,content) values('{$id}','title','content')";
	echo $sql;
	$mysqli->query($sql);

}

function get_table_name($id){
	return 'article_'.intval($id)%10;
}

new_article();

以上就介绍了php操作 mysql数据库简单分表原理-带详细步骤,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Statement:
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