2014-06-25 99 views
2

我無法從原始MySql查詢中刪除數據庫。有沒有更好的辦法?請建議。有沒有一種方法可以編寫查詢來在Zend中刪除數據庫。我使用Zend 1.11無法刪除數據庫。丟棄數據庫查詢不起作用

// Delete db function 
public function deleteDB($dbName){ 
// For database connection 
$config = new Zend_Config( 
    array(
    'database' => array(
    'adapter' => 'PDO_MYSQL', 
    'params' => array(
    'host'  => 'localhost', 
    'dbname' => $dbName, 
    'username' => 'root', 
    'password' => '', 
      ) 
    ) 
    ) 
); 
$db = Zend_Db::factory($config->database); 

//Delete database 
$sql = 'DROP DATABASE'. $dbName; 
$db->query($sql); 

回答

2

如果你的配置是正確的,那麼儘量把空間DATABASE後像

//Delete database 
$sql = "DROP DATABASE `". $dbName."`"; 
+0

我試過了。它引發錯誤爲「語法錯誤或訪問衝突」 – Shirshak

+0

您能提供完整的錯誤消息 – Sadikhasan

+0

SQLSTATE [42000]:語法錯誤或訪問衝突:1064您的SQL語法錯誤;檢查與您的MySQL服務器版本相對應的手冊,在第1行附近使用正確的語法 – Shirshak

0

$sql = 'DROP DATABASE'. $dbName;

我想你錯過了一個空間

$sql = 'DROP DATABASE '. $dbName;

+0

我試過了。它會拋出錯誤爲「語法錯誤或訪問衝突」 – Shirshak

+0

@ user3386487它似乎你的mysql用戶沒有權限刪除數據庫 – leo108

+0

我剛剛從相同的用戶名從控制檯刪除數據庫。這似乎是它的一個Zend問題。你能幫助我嗎? – Shirshak