如何使用 zend 框架 1.12 执行 sql 文件 file.sql?
How to execute a sql file file.sql with zend framework 1.12?
Php 脚本:
$db = Zend_Db_Table::getDefaultAdapter();
$file_content = file_get_contents('file.sql', FILE_USE_INCLUDE_PATH);
if($file_content!=''){
$db->query($sql);
}
如果 sql 文件包含一个简单的 sql 查询,它对我有用。
我的 sql 文件包含过程声明:
DELIMITER $$
CREATE PROCEDURE PROC()
BEGIN
ALTER ...... ;
DELETE ..... ;
END $$
DELIMITER ;
如果您的 file.sql
的内容用作 sql 查询字符串,它应该如下所示(没有 "delimiters"):
CREATE PROCEDURE PROC()
BEGIN
ALTER ...... ;
DELETE ..... ;
END
另外,事先检查数据库中是否存在某个过程:
SELECT EXISTS (SELECT 1 FROM mysql.proc p WHERE db = 'db_name'
AND name = 'PROC');
Php 脚本:
$db = Zend_Db_Table::getDefaultAdapter();
$file_content = file_get_contents('file.sql', FILE_USE_INCLUDE_PATH);
if($file_content!=''){
$db->query($sql);
}
如果 sql 文件包含一个简单的 sql 查询,它对我有用。
我的 sql 文件包含过程声明:
DELIMITER $$
CREATE PROCEDURE PROC()
BEGIN
ALTER ...... ;
DELETE ..... ;
END $$
DELIMITER ;
如果您的 file.sql
的内容用作 sql 查询字符串,它应该如下所示(没有 "delimiters"):
CREATE PROCEDURE PROC()
BEGIN
ALTER ...... ;
DELETE ..... ;
END
另外,事先检查数据库中是否存在某个过程:
SELECT EXISTS (SELECT 1 FROM mysql.proc p WHERE db = 'db_name'
AND name = 'PROC');