public static function create($db_name)
{
try {
//建立數據庫
$createDbSql = 'CREATE DATABASE IF NOT EXISTS ' . $db_name . ' DEFAULT CHARACTER SET utf8mb4;';
$ret = M::execute($createDbSql);
if ($ret === false) {
$this->error('建立數據庫失敗');
}
//切換數據庫
M::link($db_name);
M::startTrans();
// 導入sql數據並建立表
$SQL_SCRIPT = file_get_contents(APP_VENDOR . 'SQL/sgpc_private.sql');
$scriptArray = preg_split("/;[\r\n]+/", $SQL_SCRIPT);
foreach ($scriptArray as $item) {
if(!empty($item)) {
$res = M::execute($item . ';');
if ($res === false) {
M::rollback();
throw new Exception('操做失敗');
}
}
}
M::commit();
return true;
} catch (\Exception $e) {
return false;
};
}sql