2011-11-18 28 views
0

我正在進行大學生鍛鍊,並且有以下問題:在mySQL中定義域名?

「國家」表的域名是什麼?

我對域的理解是它定義了一個屬性的可能值。 這意味着表格「國家/地區」沒有域名,但表格「國家/地區」中的各種屬性都有自己的域名。 例如,屬性「SurfaceArea」具有域FLOAT(10,2),屬性「名稱」具有域CHAR(52)

這是正確的嗎?

+0

'country' table?你的意思是MySQL提供的示例表? – Raptor

+0

很可能,我們得到了一些與之合作的數據庫,其中一個被稱爲「世界」,並且它是一張名爲「國家」的表格,具有您期望在國家,規模,人口,首府城市等中看到的多種屬性......但是,這只是我的例子,問題與任何數據庫表格一起出現,您可以如上所述在討論表格時使用術語「域」,還是根據我的理解,專門與單個屬性相關聯。 –

回答

1

您對域的理解是正確的,但不完整。通常,域是按照您指定的數據類型實現的。但是,域可以比數據類型更具體。考慮屬性等級,可能的值可以是{A,B,C,D,F,I}。如果您將數據類型指定爲CHAR(1),那麼您並未消除無效字母,如G,H,J等。因此,理解原始域是什麼以及它與數據域有什麼不同很重要類型。任何剩餘的約束,如消除這些無效值通常作爲應用程序約束來實現。關於此的一個很好的參考是Elmasry和Navathe。