यही वह स्रोत है जिसने मुझे इसे समझने में मदद की...http://zend-framework-community.634137.n4.nabble.com/Problems-change-the-sql-end-of-statement-delimiter-tp2124060p2124276.html
मेरा मानना है कि यह कुछ ऐसा है जिसे कुछ MySQL क्लाइंट ने एक ही समय में sql स्टेटमेंट के एक समूह को शिपिंग करने में मदद करने के लिए लागू किया है।
mysqli ड्राइवर इस कार्यक्षमता को लागू नहीं करता है।
तो, यह काम करना चाहिए।
$query = <<<QUERY
DROP VIEW IF EXISTS `myview` ;
SHOW WARNINGS;
DROP TABLE IF EXISTS `myview`;
SHOW WARNINGS;
CREATE OR REPLACE VIEW `myview` AS
...view definition...
;
SHOW WARNINGS;
SET [email protected]_SQL_MODE;
SET [email protected]_FOREIGN_KEY_CHECKS;
SET [email protected]_UNIQUE_CHECKS;
QUERY;
$result = mysqli_multi_query($dbConnection, $query);
मैं उसी समस्या में भाग गया, उसी mysqli ड्राइवर के साथ, multi_query फ़ंक्शन के साथ (प्रक्रियाओं को बनाते समय सीमांकक का उपयोग करके) और DELIMITER को हटा रहा था मेरे एसक्यूएल से काम किया।