19 require_once(BASE.
"wcmf/lib/model/mapper/class.RDBMapper.php");
 
   20 require_once(BASE.
"wcmf/lib/util/class.Log.php");
 
   21 require_once(BASE.
"wcmf/lib/util/class.InifileParser.php");
 
   40     if (file_exists($file))
 
   42       Log::info(
'Executing SQL script '.$file.
' ...', __CLASS__);
 
   47       if (($initParams = $parser->getSection($initSection)) === 
false)
 
   54       $connection = $mapper->getConnection();
 
   56       Log::debug(
'Starting transaction ...', __CLASS__);
 
   57       $connection->beginTransaction();
 
   60       $fh = fopen($file, 
'r');
 
   65           $command = fgets($fh, 8192);
 
   66           if (strlen(trim($command)) > 0)
 
   68             Log::debug(
'Executing command: '.$command, __CLASS__);
 
   70               $connection->query($command);
 
   72             catch(PDOException $ex) {
 
   80       if ($exception == null)
 
   82         Log::debug(
'Execution succeeded, committing ...', __CLASS__);
 
   83         $connection->commit();
 
   87         Log::error(
'Execution failed. Reason'.$exception->getMessage(), __CLASS__);
 
   89         $connection->rollBack();
 
   91       Log::debug(
'Finished SQL script '.$file.
'.', __CLASS__);
 
   95       Log::error(
'SQL script '.$file.
' not found.', __CLASS__);
 
  107   public static function copyDatabase($srcName, $destName, $server, $user, $password)
 
  109     if($srcName && $destName && $server && $user)
 
  114       $dbConnect = mysql_connect($server, $user, $password);
 
  119       $sqlStatement = 
"SHOW TABLES FROM ".$srcName;
 
  120       $tables = mysql_query($sqlStatement, $dbConnect);
 
  123         while($row = mysql_fetch_row($tables))
 
  126           $sqlStatement = 
"CREATE TABLE ".$destName.
".".$row[0].
" LIKE ".$srcName.
".".$row[0];
 
  128           $result = mysql_query($sqlStatement, $dbConnect);
 
  132           mysql_free_result($result);
 
  135           $sqlStatement = 
"INSERT INTO ".$destName.
".".$row[0].
" SELECT * FROM ".$srcName.
".".$row[0];
 
  137           $result = mysql_query($sqlStatement, $dbConnect);
 
  141           mysql_free_result($result);
 
  143         mysql_free_result($tables);
 
  144         mysql_close($dbConnect);
 
  161     if($name && $server && $user)
 
  164       $dbConnect = mysql_connect($server, $user, $password);
 
  169       $sqlStatement = 
"CREATE DATABASE IF NOT EXISTS ".$name;
 
  170       $result = mysql_query($sqlStatement, $dbConnect);
 
  174       mysql_free_result($result);
 
  175       mysql_close($dbConnect);
 
executeScript($file, $initSection)
RDBMapper maps objects of one type to a relational database schema. It defines a persistence mechanis...
error($message, $category)
debug($message, $category)
info($message, $category)
throwEx($message, $file='', $line='')
static createDatabase($name, $server, $user, $password)
DBUtil provides database helper functions. 
static copyDatabase($srcName, $destName, $server, $user, $password)