Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm cách nào để mysqli làm việc với DELIMITERs trong câu lệnh SQL?

Đây là nguồn đã giúp tôi hiểu điều này ... http://zend-framework-community.634137.n4.nabble.com/Problems-changed-the-sql-end-of-statement-delimiter-tp2124060p2124276.html

Tôi tin rằng nó chỉ là thứ mà một số máy khách MySQL đã triển khai để giúp vận chuyển một loạt các câu lệnh sql cùng một lúc.

trình điều khiển mysqli không triển khai chức năng này.

Vì vậy, điều này sẽ hoạt động.

$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);

Tôi đã gặp phải vấn đề tương tự, với cùng một trình điều khiển mysqli, với chức năng multi_query (sử dụng dấu phân cách trong khi tạo thủ tục) và xóa DELIMITER từ SQL của tôi đã hoạt động.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chèn ngày từ biểu mẫu bằng PHP Mysql

  2. Làm thế nào để tránh sửa chữa với Keycache?

  3. Các giao dịch lồng nhau có được phép trong MySQL không?

  4. com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Lỗi liên kết truyền thông

  5. Làm cách nào để tạo một trang HTML động bằng PHP?