0

我有一個SQL Server數據庫,它擁有一個表,其中varchar列對其有一個檢查約束,以確保只有幾個不同的單詞可以作爲值(名稱)輸入。檢查約束的元數據SQL Server

像這樣

CONSTRAINT chk_Names CHECK (name IN ('John', 'Eva', 'Carl', 'Fred')) 

我想要做要做的就是與這些名字的Java來填充組合框,我不想手動輸入它們,因爲它們可能會更改數據庫中。我想從元數據中填充它。

但我一直沒能找到一種方式來獲得從數據庫中的信息或者與INFORMATION_SCHEMAsys.objects(或從DatabaseMetaData的在Java對這個問題)

我是很新的SQL Server但有可能以某種方式獲得這些信息?

問候 /弗雷德

回答

1

這聽起來像你應該名稱列表移動到表格。你是Java表單可以從表中選擇數據。

而且,由於數據可以更改,所以更新表比改變檢查約束更好。您也可以將檢查約束更改爲外鍵約束。

您還可以在INFORMATION_SCHEMA.CHECK_CONSTRAINTS中找到檢查約束定義。該表達式在CHECK_CLAUSE列中;並且,您必須從表達式中提取值。

+0

該名稱只是表格中的一小部分,我無法將其作爲單獨的表格移動出去。 – Fredkr

+1

增加了INFORMATION_SCHEMA的數據。 – bobs