<?php
try {
$DBH = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
$sql = $DBH->exec("
CREATE TABLE `store_config` (
store_name varchar(30),
last_update date)
");
} catch (PDOException $e) {
echo "Could not connect to database.";
$DBH = null;
}
?>
不引發PDOException,可能存在SQL錯誤,但我不知道如何檢索該錯誤,並且當我使用phpMyAdmin檢查數據庫時沒有創建表。我做錯了什麼?爲什麼這個PHP/SQL不會創建表?
感謝您的閱讀。
編輯: 當我執行相同的SQL代碼直接到phpMyAdmin的它給了權限被拒絕錯誤...
1142 - 創建拒絕用戶 '$用戶' @ '$ my_ip' 爲table命令' store_config'
我很困惑,因爲當我使用web主機web窗體創建用戶時,它沒有給我選項來授予任何權限,但只是爲了讓此用戶成爲數據庫所有者 - 是我必須做的嗎?
編輯:
我給我的用戶帳戶「DBO訪問」,它現在工程(創建表)。
感謝您的意見。
的SQL工作,如果你只是把它放到MySQL的,所以它必須是它沒有連接或您的dbname是不是一個實際的數據庫在MySQL的名稱,或者用戶沒有權利對D B。 – thezboe 2012-04-11 21:28:23
@thezboe請參閱我的文章中的編輯 - 我現在有一個錯誤(權限被拒絕) – Ozzy 2012-04-11 21:31:08