本文整理汇总了PHP中SqlParser::parseFile方法的典型用法代码示例。如果您正苦于以下问题:PHP SqlParser::parseFile方法的具体用法?PHP SqlParser::parseFile怎么用?PHP SqlParser::parseFile使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SqlParser
的用法示例。
在下文中一共展示了SqlParser::parseFile方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: insertSql
/**
* @param string $datasource A datasource name.
*/
public function insertSql($datasource = null)
{
$statementsToInsert = array();
foreach ($this->getProperties($this->getSqlDbMapFilename()) as $sqlFile => $database) {
if (null !== $datasource && $database !== $datasource) {
// skip
break;
}
if (!isset($statementsToInsert[$database])) {
$statementsToInsert[$database] = array();
}
if (null === $database || null !== $database && $database === $datasource) {
$filename = $this->getWorkingDirectory() . DIRECTORY_SEPARATOR . $sqlFile;
if (file_exists($filename)) {
foreach (SqlParser::parseFile($filename) as $sql) {
$statementsToInsert[$database][] = $sql;
}
}
}
}
foreach ($statementsToInsert as $database => $sqls) {
if (!$this->hasConnection($database)) {
continue;
}
$pdo = $this->getPdoConnection($database);
$pdo->beginTransaction();
try {
foreach ($sqls as $sql) {
$stmt = $pdo->prepare($sql);
$stmt->execute();
}
$pdo->commit();
} catch (PDOException $e) {
$pdo->rollback();
throw $e;
}
}
return true;
}