本文整理汇总了PHP中adoSchema::addSQL方法的典型用法代码示例。如果您正苦于以下问题:PHP adoSchema::addSQL方法的具体用法?PHP adoSchema::addSQL怎么用?PHP adoSchema::addSQL使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类adoSchema
的用法示例。
在下文中一共展示了adoSchema::addSQL方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: execute
/**
* Parse an XML database file and output the corresponding SQL statements.
* See lib/pkp/dtd/xmlSchema.dtd for the format of the XML files.
*/
function execute()
{
require_once './lib/pkp/lib/adodb/adodb-xmlschema.inc.php';
if (in_array($this->command, array('print', 'save'))) {
// Don't connect to actual database (so parser won't build upgrade XML)
$conn = new DBConnection(Config::getVar('database', 'driver'), null, null, null, null, true, Config::getVar('i18n', 'connection_charset'));
$dbconn = $conn->getDBConn();
} else {
// Create or upgrade existing database
$dbconn =& DBConnection::getConn();
}
$schema = new adoSchema($dbconn);
$dict =& $schema->dict;
$dict->SetCharSet(Config::getVar('i18n', 'database_charset'));
if ($this->type == 'schema') {
// Parse XML schema files
$sql = $schema->parseSchema($this->inputFile);
switch ($this->command) {
case 'execute':
$schema->ExecuteSchema();
break;
case 'save':
case 'save_upgrade':
$schema->SaveSQL($this->outputFile);
break;
case 'print':
case 'print_upgrade':
default:
echo @$schema->PrintSQL('TEXT') . "\n";
break;
}
} else {
if ($this->type == 'data') {
// Parse XML data files
$dataXMLParser = new DBDataXMLParser();
$dataXMLParser->setDBConn($dbconn);
$sql = $dataXMLParser->parseData($this->inputFile);
switch ($this->command) {
case 'execute':
$schema->addSQL($sql);
$schema->ExecuteSchema();
break;
case 'save':
case 'save_upgrade':
$schema->addSQL($sql);
$schema->SaveSQL($this->outputFile);
break;
case 'print':
case 'print_upgrade':
default:
$schema->addSQL($sql);
echo @$schema->PrintSQL('TEXT') . "\n";
break;
}
$schema->destroy();
$dataXMLParser->destroy();
}
}
}