Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用MySQLi PHP代码创建和管理分区表_Php_Mysql_Mysqli_Partitioning - Fatal编程技术网

使用MySQLi PHP代码创建和管理分区表

使用MySQLi PHP代码创建和管理分区表,php,mysql,mysqli,partitioning,Php,Mysql,Mysqli,Partitioning,我希望能够使用PHP代码创建分区表,而不是在phpMyAdmin中手动运行查询,这可以做到吗 我正在尽可能地使用MySQLi,因为它比MySQL更安全 目前,我的一个典型表格是这样创建的 $sql = "CREATE TABLE `fred` ( `id` INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, `data1` VARCHAR(256), `data2` VARCHAR(256), `data3` VARCHAR(256), `data4` VAR

我希望能够使用PHP代码创建分区表,而不是在phpMyAdmin中手动运行查询,这可以做到吗

我正在尽可能地使用MySQLi,因为它比MySQL更安全

目前,我的一个典型表格是这样创建的

$sql = "CREATE TABLE `fred` (
`id` INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
`data1` VARCHAR(256),
`data2` VARCHAR(256),
`data3` VARCHAR(256),
`data4` VARCHAR(256)
) CHARACTER SET utf8 COLLATE utf8_general_ci"; 

// Performs the $sql query on the server to create the table
if ($mysqli->query($sql) === TRUE) {
  echo 'Table Fred created successfully';
}
else {
  echo 'Error: '. $mysqli->error;
}

我该如何编写这篇文章以使其分区?

我第一次听说mysql中的分区:)看一看,是的,我在搜索中也看到了那篇文章,也许我读错了那篇代码,但尽我所能告诉你,在mysql中手动创建分区表时,只需吐出SQL文本即可。如果存在或可能,我要寻找的是PHP脚本,它实际上在MySQL中创建了一个被分区的表,而不需要手动复制并粘贴myphpadmin命令行中的某个内容。我可以用PHP创建一个非分区表,它会自动为我做这件事,当然也有一种方法可以用PHP中的分区表来实现自动化?
CREATE TABLE `invoice_detail2` (
  `id` int(11) NOT NULL,
  `office_code` varchar(10) COLLATE utf8mb4_unicode_ci NOT NULL,
  `order_type` varchar(10) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'purchase order, sale order, transfer in, transfer out, debit note, credit note',
  `in_out_flag` int(1) NOT NULL COMMENT '1=in, 2=out',
  `order_no` varchar(10) COLLATE utf8mb4_unicode_ci NOT NULL,
  `order_date` date NOT NULL,
  `item_no` int(10) NOT NULL,
  `item_qty` int(10) NOT NULL,
  `item_unit` varchar(5) COLLATE utf8mb4_unicode_ci NOT NULL,
  `unit_price_loc` int(12) NOT NULL,
  `unit_price_fc` int(12) NOT NULL,
  `curr_code` int(5) NOT NULL,
  `exch_rate` int(7) NOT NULL,
  `total_price_loc` decimal(15,2) NOT NULL,
  `total_price_fc` decimal(15,2) NOT NULL,
  `include` int(11) NOT NULL,
  `includ_vat_tax` varchar(1) COLLATE utf8mb4_unicode_ci NOT NULL,
  `bar_code` longtext COLLATE utf8mb4_unicode_ci NOT NULL,
  `item_origin` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL,
  `item_waranty` int(4) NOT NULL,
  `warranty_type` varchar(1) COLLATE utf8mb4_unicode_ci NOT NULL,
  `agaunest_indent_no` varchar(10) COLLATE utf8mb4_unicode_ci NOT NULL,
  `order_statud` varchar(1) COLLATE utf8mb4_unicode_ci NOT NULL,
  `status_date` date NOT NULL,
  `status_ref` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ss_creator` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ss_created_on` datetime NOT NULL,
  `ss_modifier` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ss_modofier_on` date NOT NULL
)PARTITION BY RANGE (month(order_date)) (
    PARTITION p0 VALUES LESS THAN (1),
    PARTITION p1 VALUES LESS THAN (2),
    PARTITION p2 VALUES LESS THAN (3),
    PARTITION p3 VALUES LESS THAN (4),
    PARTITION p4 VALUES LESS THAN (5),
     PARTITION p5 VALUES LESS THAN (6),
    PARTITION p6 VALUES LESS THAN (7),
    PARTITION p7 VALUES LESS THAN (8),
    PARTITION p8 VALUES LESS THAN (9),
    PARTITION p9 VALUES LESS THAN (10),
     PARTITION p10 VALUES LESS THAN (11),
    PARTITION p11 VALUES LESS THAN (12)
);