2012-04-06 61 views
1

從句法上看,至少SQL是相當遙遠的。謝謝!什麼查詢語言最貼近Codd的關係數據模型?

+0

爲什麼選擇科德?他發明了關係模型,但自那以後它已經進一步發展。以空值爲例。 Codd的原始模型沒有空值的概念。很久以後,他將三值邏輯與空值相加。他後來拒絕了這種支持兩種幾乎被普遍拒絕的空值。在現代關係理論中,所有的零點概念都被拒絕。 – onedaywhen 2012-04-10 07:31:36

回答

3

據說Dataphor的D4非常接近(唯一的主要錯誤是引入了客戶強加給開發者的空類構造IIRC)。

The Third Manifesto的項目頁面(http://www.dcs.warwick.ac.uk/~hugh/TTM/Projects.html)上列出的項目都應該更加貼近。

+0

+1,雖然我認爲你誤解了Dataphor和null:請閱讀完整故事[here](http://www.dcs.warwick.ac.uk/~hugh/TTM/Reflections-from-implementers.html#Dataphor )(「因爲我們試圖在不引入數據庫管理系統中引入空值的情況下構建一個實際的解決方案,所以我們遇到了重大問題...最終,最簡單的問題實際解決方案是採用空值在今天任何給定的基於SQL的DBMS中......這並不是說我們覺得SQL風格的空值是解決這個問題的最終方法,只是我們不覺得問題解決了。「) – onedaywhen 2012-04-10 07:25:40

+0

Dataphor曾經開啓Darwen的「合規」語言/項目清單,但因「這個故事」而被刪除。 – 2012-04-11 18:49:00

+0

這是一個有趣的讀法:「我們甚至試圖通過將null定義爲類型系統的一部分來彌補這種情況」 - 讓我想起最近讀到的一些東西,[如何使用S-by-C處理丟失的信息](http ://www.dcs.warwick.ac.uk/~hugh/TTM/HTHMIUS-by-C-review-draft.pdf)。也許他們應該回到白板:)順便說一句,你使用過Dataphor嗎?我嘗試過一次,但無法編譯源代碼,並得不到任何支持:( – onedaywhen 2012-04-12 07:25:58

1

有兩種語法非常不同的語言:關係代數關係演算和SQL是兩者的混合物。有很多逐字的關係代數實現,所以這個問題顯然不是實現的「忠實」。