2011-03-30 77 views
0

剛上手,並想我需要一個「數據庫」,我這樣做:PHP MySQL的初學者問題:

$db = new PDO("java:comp/env/jdbc/mysql"); 
$stmt = $db->query("CREATE DATABASE kitty_db"); 

要看看它的工作我註釋掉上面,然後寫道:

$link = mysql_connect('localhost:3306', 'me', 'blah'); 
$db_list = mysql_list_dbs($link); 

while($row = mysql_fetch_object($db_list)) { 
     echo $row->Database ."<BR>"; 

我看到我的新的數據庫,在那裏:

information_schema 
mysql 
kitty_db 
performance_schema 
test 

所以我的第一個問題是,爲什麼我甚至需要進行新的DAT靠近mysql只是爲了開始一些事情?我幾乎沒有想過在幾年前(實際上是7),當我設置MySQL之前(通過PHP)不必這樣做。

無論如何,我想知道爲什麼我現在無法創建表格。如果kitty_db不是一個好主意,那麼讓我們把它拿出來。但我可能無法放置TABLE'milk_bowl'(使用索引或鍵或任何'bowl_name'字段)。

感謝您的任何幫助。事情變得更加複雜,因爲我在十年前剛剛在MySQL中打開了一個命令行,併發布了簡單的查詢。

回答

2

所以我的第一個問題是,爲什麼我 甚至需要做出一個新的數據庫旁邊 到mysql剛上手的 的東西嗎?我不記得在幾年前有 這樣做(實際上是7 ),當時我正在設置MySQL (通過PHP的sans)。

這個問題有點模糊。你在問什麼需要建立一個數據庫來開始一些事情?不知道更多關於你的事情,我不認爲這個問題是可以回答的。創建數據庫通常是設置數據庫的第一步。入門時您可​​能會發現this很有幫助。

無論如何,我想知道爲什麼我不能 現在創建一個表。如果kitty_db不是 是一個好主意,那麼讓我們把它拿出來。但是我 可能會遇到問題將 'milk_bowl'(使用索引或密鑰或 任何'bowl_name'字段)。

從上面的鏈接(適用於你的例子):

<?php 
$con = mysql_connect("localhost:3306","me","blah"); 
if (!$con) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 

// Create database 
if (mysql_query("CREATE DATABASE kitty_db",$con)) 
    { 
    echo "Database created"; 
    } 
else 
    { 
    echo "Error creating database: " . mysql_error(); 
    } 

// Create table 
mysql_select_db("kitty_db", $con); 
$sql = "CREATE TABLE milk_bowl 
(
bowl_name varchar(15), 
)"; 

// Execute query 
mysql_query($sql,$con); 

mysql_close($con); 
?> 

感謝您的幫助。事情有 變得更加複雜,因爲我剛剛 大約十年前在MySQL 中打開了一個命令行,並且發佈了簡單查詢 。

我不認爲這已經改變了很多。您仍然可以使用命令行連接到您的MySQL數據庫並直接發出查詢。PHP只是讓你通過瀏覽器/腳本來完成它。

+0

謝謝你們的回答。 – user225626 2011-03-31 00:17:32

1

這不是直接回答你的問題,但它可以解決你的問題......你有沒有嘗試過使用諸如MySQL Administrator或MySQL Query Browser等應用程序?最近我經歷了很長時間的停頓後又回到了MySQL,發現它們都非常有幫助。

+0

這實際上是一個非常深思熟慮的建議,最近我看到,今天在網絡上瀏覽管理員存在。不幸的是,它仍然不能解決我目前的問題之一,例如,大多數人只是基本上將'mysql'作爲唯一的數據庫而不創建新的數據庫。 – user225626 2011-03-31 00:10:45

+0

我總是使用名稱來反映他們的用途。可能是很好的做法,但可能沒有必要。祝你好運! – dwarbi 2011-03-31 14:24:06