![](/img/trans.png)
[英]Insert a Join Statement - (Insert Data to Multiple Tables) - C#/SQL/T-SQL/.NET
[英]Update Multiple Tables at a Time - SQL Server/T-SQL
我有兩個表,Customer和CustomerPhone。
客戶中的單個記錄可以具有多個客戶電話記錄。 如下圖所示,“電話和傳真”位於“客戶電話”表中,其余字段位於“客戶”表中。 如果用戶要編輯客戶記錄,顯然我將不得不更新Customer表中的記錄以及CustomerPhone中至少兩個記錄(電話和傳真)。
我可以寫兩個更新語句,一個更新customerPhone和第二個更新Customer表。 有更好的解決方案嗎?
在這種情況下,風險是一個更新成功,但另一個更新由於某種原因(拔下網絡電纜,斷電等)而失敗,這將使數據庫中的數據不正確。
您可以通過2種方法來克服這一點。
SQL中無法在單個語句中更新多個表,但是您當然可以在同一命令中包含多個語句。
上面的第二種選擇可能對您來說很麻煩,因為您可以為客戶提供許多電話號碼,而且這是有限制的,因此,我建議您運行單獨的更新,但要在交易中進行。
關於此的幾種方法:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.