Как я уже говорил, вы не можете передать более 1 оператора через PDO.Вы должны выделить их, как показано ниже.Все это рассматривается как одно соединение, и каждая команда будет выполняться отдельно.
$create = "CREATE VIEW my_view AS
select option_name,option_value from db1.options
UNION ALL
select option_name,option_value from db2.options";
$pdoClient = new PDO("mysql:host=$host;port=$port", $user, $pass);
$pdoClient->exec("USE db1"); // Select the database
$pdoClient->exec("DROP VIEW IF EXISTS my_view");
$pdoClient->exec($create);
После того, как это будет сделано, выбор будет работать нормально, например:
$pdoClient->query($select);