2014-10-10 59 views
0

如何在SQL ServerENUM像字符串?我知道SQL服務器沒有ENUM,但如何有這種機制?請爲以下兩種情況建議。如何在TSQL中使用枚舉類似的字符串?

  1. 不正確ENUM是必需的,而只是一個字符串是必需的?
  2. 確實ENUM有數字表示是否需要?
+1

我不是很確定你在找什麼。在SQL中,可以很容易地創建一個包含兩列,一個數字和一個字符串的表格,並且都聲明爲鍵。你想用一個枚舉來做什麼,你不能用這樣的表格做什麼? – 2014-10-10 06:05:58

回答

2

可能與檢查約束,你可以在SQL Server

CREATE TABLE Direction 
(
    types varchar(10) NOT NULL CHECK (types IN('North', 'South', 'East','West')) 
) 

實現ENUM方向表,將接受只拿到插入

0

所提到的價值。如果你的問題很簡單作爲persisting your Enum values inside SQL Server [事實上,在這種情況下存儲數據庫並不重要],那麼我對你有一個建議。

比方說你有你的存儲類的電話號碼類型的字段:

public enum ContactType 

public enum ContactType 
{ 
    Home = 0, 
    Mobile = 1 
} 

你會怎樣去,如果你問你的枚舉你的數據庫中,追求幸福生活的後記的商店INT表示對於額外的入口,每次都要更改DB?不好! 你只需將它添加到你枚舉在你的代碼和問題排序。