我一直在想如果綁定整個值的列表是好的做法。例如,我有以下查詢:php PDO - 你綁定所有參數嗎?
INSERT INTO messages
(thread_id,message,from_id,to_id,to_viewed,notified,from_deleted,to_deleted,created)
SELECT :threadId,:msg,:fromId,:toId,0,0,0,0,:createdTime FROM messages
WHERE thread_id = :threadId AND to_id=:toId LIMIT 1
在這種情況下會有什麼也結合notified
,from_deleted
和to_deleted
領域,因爲這是靜態值,始終爲0插入新的味精時,有意義嗎?
我需要修改我的問題。我知道,出於安全原因,沒有理由也綁定不是由用戶生成的字段/值。在我的情況下,沒有理由綁定文件notified
,from_deleted
和to_deleted
,因爲它們總是0.但我真正的問題是我應該爲其他原因(緩存)綁定這些字段。 mysql會緩存整個查詢語句還是隻綁定parms?
你試圖運行哪個查詢?你有插入查詢的一部分,然後是不正確的選擇查詢 – 2012-07-21 08:16:06
你爲什麼認爲這是不正確的?僅當thread_id與此用戶相關時,才使用此查詢來插入消息。在這種情況下,我不需要額外的查詢來驗證這個tread_id是否屬於這個用戶。 – user1324762 2012-07-21 08:39:00
對。我沒有意識到這是一個子查詢 – 2012-07-21 08:48:48