2013-08-30 107 views
0

我有一個名爲notif的表,我存儲帶有時間戳和topic_id的通知。我有另一個表格主題,它存儲主題名稱。現在我已經給出了主題名稱和notif內容,並且我想將它們插入到notif表中。因此,我必須根據名稱從主題中選擇topic_id,並將notif文本和當前時間一起插入到notif表中。MySQL插入與選擇

這可以在一個查詢中完成嗎?

public function insert($text, $name) { 
$query = "INSERT INTO notif(content, topic, timestamp) 
      SELECT $text, topic_id, NOW() FROM topic WHERE name = $name" 
} 
+5

是的,它可以做到。 – Kermit

+0

告訴我們你到目前爲止所做的以及什麼是/不工作。 – user2366842

+0

這是我迄今爲止,我沒有得到例外,但沒有寫入數據庫 – user2734138

回答

0

嘗試是這樣的:

Insert Into notif (topic_ID, NotifText,theTimestampe) (Select topic_ID,NotifText,GetDate() from topic Where name = @param) 

僅供參考,未經測試。

+0

刪除圓括號圍繞'SELECT' – Kermit

+0

括號是可選的,至少在SQL Server中。我更喜歡他們,因爲他們幫助我使查詢更具可讀性。 – Elias