Mysqli ve Zend_Db kullanarak A non-hazırlanmış sorgu

2 Cevap php

Nedeniyle benim sunucuları PDO sürümünde bir hata, ben mysqli kullanarak açtınız. Ancak, bu Zend_DB MySQLi adaptor bir exec işlevi yok gibi, başka bir sorunu sunuyor. (Zend PDO adaptor did), ben bir sql komut dosyası yürütemiyor demektir. (DAMLA TABLO bir yük İçeren ve TABLO sorguları CREATE).

Yani sadece yapabileceği:

$sqlQuery = file_get_contents('schema.sql');
$db = Zend_Db_Table_Abstract::getDefaultAdapter();
$db->exec($sqlQuery);

Ben Zend MySQLi Adaptörünü kullanarak bunu yapmak için bir yol bulamıyorum. Herhangi bir fikir?

2 Cevap

Deneyin:

$sqlQuery = file_get_contents('schema.sql');
$adapter = Zend_Db_Table_Abstract::getDefaultAdapter();
$mysqli = $adapter->getConnection(); // i think the returns the Mysqli Instance directly...
$mysqli->multi_query($sqlQuery);

Bu ne yaptım

$bootstrap = $application->getBootstrap();
$bootstrap->bootstrap(‘db’);
$config = $bootstrap->getResource(‘db’)->getConfig();
$runCommand = “mysql -h “.$config["host"].” -P “.$config["port"].” -u’”.$config["username"].”‘ -p’”.$config["password"].”‘ “.$config["dbname"].” < “.dirname(__FILE__) . ‘/schema.mysql.sql’;
echo $runCommand;
system($runCommand);

More info: http://www.unexpectedit.com/zend-php/zend-db-exec-a-sql-file