0
我有關係的MySQL數據庫的設置是這樣的:MySQL的關係插入
COMMAND SOURCE DESTINATION
id id id
datetime name name
source_id location_id data_type
destination_id
LOCATION
id
name
可能有許多的來源和目的地的命令和消息人士透露許多地方。
我接收命令使用以下值(命令ID自動增量):
datetime = 12345671234
source = "source_device_one"
destination = "destination_device_one"
我需要的方式,將所述指令值到數據庫中時,程序檢查是否「source_device_one」是出了名它已經存在於SOURCE表中,如果有的話,它會得到它的ID,如果沒有,它會將它插入到表中並檢索命令插入的ID。同樣需要爲目標設備完成。我知道我可以以編程方式進行單獨的查詢(在python/php中,通過首先檢查每個設備是否存在於它們各自的表中並獲取它的ID /插入它,如果不是的話),但是這會需要相當多的查詢/代碼行 - 我試圖創建的系統需要儘可能快速和高效,因爲它是從流中讀取命令的。
我會非常感興趣的聽到你的意見是最好的方法來做到這一點。
非常感謝。
http://dev.mysql.com/doc/refman/5.0/en/insert-on-duplicate.html –