2014-02-22 42 views
1

我在mysql中有一個當前爲空的表。其中一列是timestamp,它被設置爲具有默認值(固定值而不是當前時間戳)。從空表(mysql)中選擇列的默認值

現在我目前沒有任何行,但我想從timestamp列中獲取默認時間戳。我嘗試了一些東西,但它不起作用。

$sql = mysql_query("SELECT DEFAULT(`timestamp`) FROM `mytable`"); 
$row = mysql_fetch_assoc($sql); 
$time = $row['timestamp']; 

echo $time; 

我不知道該怎麼做。任何幫助,將不勝感激。

+0

SELECT NOW(); ? – Strawberry

+0

爲什麼要從mysql中選擇當前時間戳?嘗試'' –

+0

我剛剛編輯了我的問題。默認時間戳不是當前時間戳。它只是一個固定的時間戳...我想取... – user3184462

回答

1

如果你的表「MYTABLE」有一個名爲「時間戳」字段,你需要這個默認值,這是方法:

$sql = mysql_query("EXPLAIN `mytable`"); 
while($row = mysql_fetch_assoc($sql)) { 
    if ($row['Field'] == 'timestamp') { 
    echo $row['Default']; 
    } 
} 
+0

非常感謝!!!! :) – user3184462

0

你的代碼看起來是正確的,只有在你的數組訪問的關鍵似乎是錯的。 tjis應該工作:

$sql = mysql_query("SELECT DEFAULT(`timestamp`) AS default_timestamp FROM `mytable`"); 
$row = mysql_fetch_assoc($sql); 
$time = $row['default_timestamp']; 
0

試試這個:

$sql = mysql_query("DESCRIBE `mytable`"); 
while ($result = mysql_fetch_assoc($sql)) { 
    if ($result['Field'] == 'timestamp') { 
     $default = $result['Default']; 
     break; 
    } 
} 

echo $default; 

乾杯

1

的MySQL版本以來5.02有一個 '數據字典' 可以用select語句進行查詢。

SELECT column_default FROM information_schema.columns 
WHERE table_name = 'your_table' 
AND column_name = 'your_column' 

返回適當的信息。

谷歌搜索'mysql information_schema'返回大量參考文獻。我不確定是否可以在這裏發佈http鏈接。