我可能對我自己來說太聰明瞭: -/如何強制更新數據庫網格?
我有一張表,裏面有一些壓力測量值。它們始終以PSI存儲,但用戶可以選擇一個收音機組按鈕在PSI和BAR之間切換。
爲了保持代碼清潔並將工作推到數據庫上,我創建了第二個表,其中包含一行configuration
項。當用戶切換無線電組時,一列psi_bar_conversion
將取值1或14.5。
在Delphi中,我查詢它關係到我的數據庫網格設置了之類的語句
SELECT ROUND(inlet_waterPressure_psi/
(SELECT psi_bar_conversion FROM configuration),
(SELECT float_precision FROM configuration))
AS inlet_waterPressure,
FROM measurements
所有這一切都工作得很好(也許我解釋太多)。
我所要做的就是在處理單選按鈕切換的函數中添加一些代碼,強制我的數據庫網格刷新其內容,因爲我剛更新了configuration.psi_bar_conversion
的值(但沒有我的查詢的直接字段,也不是我的數據源)。
我應該調用Refresh()
還是Invalidate()
或SomeOtherFunction()
- DB網格,查詢,datasrouce?這就是讓我困惑的原因。
在此先感謝您的幫助....
恕我直言,顯示轉換像這必須在客戶端完成。當兩個不同的用戶使用連接到同一個數據庫的應用程序時會發生什麼情況,並且有人希望在PSI中看到它,而在BAR中看到另一個用戶? 數據的表示不是您必須在數據庫級別解決的問題,而是在客戶端級別解決的。 我記得幾天前我在這方面回答了一個問題,不管它是什麼(我不記得細節),這對我來說是一個更好的方法,因爲它是客戶端。 – jachguate
+1 @jachguate - 一個很好的觀點。對不起,我忘了提及它是單用戶,但你提出了一個非常好的觀點。 – Mawg