2017-05-09 41 views
-1

如何做到以下幾點:在一個事務中MySQL:更新列,如果存在,否則什麼都不做?

if table has column 'name' - update 'name', else - do nothing? 

我的工作SQL是

UPDATE tmp set name = NULL 

tmp目錄表基斯更新和關閉名稱爲NULL需要重複的過程記錄。但是,有些表格沒有「名稱」字段。

那麼,是否有可能更新列爲空,如果存在,否則,什麼都不做?

+1

我不明白downwotes,但無論如何,對於那些提出了相同問題的人來說 - 從一個不存在沒有錯誤的列(例如,無聲忽略)讀取(或寫入)不可能與mysql 。列名(列中存在的列)是已知的。解決方法 - 讀取第一個信息模式以獲取所有列名並相應地繼續。這個過程將需要交易進行幾個sqls。 – bbe

回答

0

據我所知,這是不可能的。此外,我建議不要一次對多個表格進行任何修改。一般來說,每個表都是唯一的,根據字段名稱將字段設置爲NULL可能會導致重要數據丟失。

相關問題