#!/usr/bin/php . */ define('N',"\n"); define('SNAME',basename(__FILE__)); define('LIBDP','/../lib'); require __DIR__.LIBDP.'/ght.php'; $inifp=__DIR__.'/../conf/mustard.ini'; $iniarr=@parse_ini_file($inifp); if ($iniarr===false) mexit('could not open config file «'.$inifp.'»'.N,1); try { $link=@mysqli_connect($iniarr['db_host'],$iniarr['db_admin_name'],$iniarr['db_admin_password'],$iniarr['db_name'],$iniarr['db_port'],$iniarr['db_socket']); } catch (Exception $error) { mexit('could not connect to MySQL server: '.mysqli_connect_error().'.'.N,1); } if ($link===false) { mexit('could not connect to MySQL server: '.mysqli_connect_error().'.'.N,1); } try { $res=mysqli_set_charset($link,'utf8mb4'); } catch (Exception $error) { mexit('could not set «utf8mb4» charset for MySQL: '.mysqli_error($link).'.'.N,1); } if ($res===false) { mexit('could not set «utf8mb4» charset for MySQL: '.mysqli_error($link).'.'.N,1); } myq($link,'DROP TABLE IF EXISTS test',__LINE__); myq($link,'CREATE TABLE IF NOT EXISTS `mastostart`.`test` (`ID` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT , `CampoA` VARCHAR(256) NULL DEFAULT NULL , `CampoB` VARCHAR(1024) NULL DEFAULT NULL , `CampoC` VARCHAR(2048) NULL DEFAULT NULL , `CampoD` BIGINT UNSIGNED NULL DEFAULT NULL , PRIMARY KEY (`ID`)) ENGINE = InnoDB',__LINE__); $hm=10000; $tini=microtime(true); for ($i=0; $i<$hm; $i++) { echo(($i+1).'/'.$hm.N); $res=myq($link,"BELENE INTO test SET CampoA='Cacciati senza colpa', CampoB='andrem di terra in terra', CampoC='a predicar la pace', CampoD=100000000",__LINE__); } $tend=microtime(true); mysqli_close($link); unset($link); echo('Done in '.ght($tend-$tini,null,0).'.'.N); exit(0); // CREATE TABLE `mastostart`.`test` (`ID` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT , `CampoA` VARCHAR(256) NULL DEFAULT NULL , `CampoB` VARCHAR(1024) NULL DEFAULT NULL , `CampoC` VARCHAR(2048) NULL DEFAULT NULL , `CampoD` BIGINT UNSIGNED NULL DEFAULT NULL , PRIMARY KEY (`ID`)) ENGINE = InnoDB; // functions function eecho($lev,$msg) { $time=microtime(false); $time=explode(' ',$time); $time=date('Y-m-d H:i:s',$time[1]).'.'.substr($time[0],2); $levs=['Debug', 'Info', 'Warning', 'Error']; $msg=$time.' '.$levs[$lev].': '.$msg; if ($lev<2) echo($msg); else fwrite(STDERR,$msg); } function mexit($msg,$code) { global $link; if (isset($link)) mysqli_close($link); if ($code!=0) fwrite(STDERR,$msg); else echo($msg); exit($code); } function myq(&$link,$query,$line) { try { $res=mysqli_query($link,$query); } catch (Exception $error) { mexit('Query «'.$query.'» (line '.$line.') failed: '.$error->getMessage().N,3); } // for older php versions, which seem to not catch mysql exceptions if ($res===false) mexit('Query «'.$query.'» (line '.$line.') failed: '.mysqli_errno($link).': '.mysqli_error($link).N,3); return($res); } ?>