@@ -59,20 +59,24 @@ public function execute(InputInterface $input, OutputInterface $output)
5959
6060 $ connector = new Connector ();
6161 $ config = $ connector ->getConfig ($ url );
62- $ pdo = $ connector ->getPdo ($ config );
62+ $ serverPdo = $ connector ->getPdo ($ config, ' server ' );
6363 $ dbname = $ config ->getName ();
6464
65- $ pdo ->setAttribute (PDO ::ATTR_ERRMODE , PDO ::ERRMODE_EXCEPTION );
65+ // Ensure the database (schema) exists on the server
66+ $ serverPdo ->setAttribute (PDO ::ATTR_ERRMODE , PDO ::ERRMODE_EXCEPTION );
6667 if ($ config ->getDriver () != 'sqlite ' ) {
67- $ stmt = $ pdo ->query ("SELECT COUNT(*) FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = ' " . $ dbname . "' " );
68+ $ stmt = $ serverPdo ->query ("SELECT COUNT(*) FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = ' " . $ dbname . "' " );
6869 if (!$ stmt ->fetchColumn ()) {
6970 $ output ->writeln ("<info>Creating database</info> " );
70- $ stmt = $ pdo ->query ("CREATE DATABASE " . $ dbname . "" );
71+ $ stmt = $ serverPdo ->query ("CREATE DATABASE " . $ dbname . "" );
7172 } else {
7273 $ output ->writeln ("<error>Database exists...</error> " );
7374 }
7475 }
7576
77+ $ pdo = $ connector ->getPdo ($ config , 'db ' );
78+ $ pdo ->setAttribute (PDO ::ATTR_ERRMODE , PDO ::ERRMODE_EXCEPTION );
79+
7680 $ loader = LoaderFactory::getInstance ()->getLoader ($ filename );
7781 $ toSchema = $ loader ->loadSchema ($ filename );
7882
0 commit comments