2010-01-07 26 views
0

我正在做一個小型關係型數據庫,在一臺計算機上使用由一個人。我選擇了OpenOffice.org的Base(版本3.1.1),因爲它是免費的,對於這種情況應該足夠了。我的問題的簡化版本是:實施OpenOffice.org的基地形式的簡單許多一對多的關係

我有一個文章表,列:ID,標題,內容等......
我有一個關鍵字表:列,ID,關鍵字。
我有一個關係表與列:ID,ArticleID,KeywordID

只是一個基本的,經典的多對多關係的例子。

然後,我使用Base中的'設計視圖'創建了一個表單(鏈接到用戶使用數據庫)並鏈接到Articles表格,該表格工作正常,並允許我在Articles表格中查看,編輯和創建行。

我的問題是如何將包括在同一形式的關係,以關鍵詞。也就是說,我希望用戶能夠查看並選擇哪些關鍵字屬於當前正在表單中查看的文章。

關鍵字的數量是有限的(大概5-15)如果該事項。優選的設置將會是我在每個關鍵字的前面加上一個複選框已經創建在前面提到的形式的關鍵字(動態鏈接到課程的關鍵詞表)的列表

我已經試過所有Google'ing可能的關鍵字,我已經沒有任何適用於我的情況。我相信答案是使用SubForms,或者可能是我不熟悉的一些SQL語法。任何幫助讚賞。

回答

1

我做了一些更多的搜索,終於找到了解決辦法

http://user.services.openoffice.org/en/forum/viewtopic.php?p=16159#p16159

答:

線程解釋這個非常問題(除其他事項外),含有許多對許多使用中間表的基本關係數據庫中創建的形式,可以在這裏找到可以在上面發佈的主題的第2頁找到並下載具有上述線程海報(DrewJensen)之一的功能表單的樣本數據庫。 (名爲movies_2.odb)

使用我的示例表和列從orginial後的解決方案的簡要說明:
訣竅在於創造一個子表單鏈接到關係表的形式中我創造。該子表格應包含一個表格控件。然後應該在該表格控件中創建一列。該列應該與KeywordID列對齊。該列的「列表內容」字段應包含:SELECT「Keyword」,「ID」FROM「Relations」。
(只檢查了上面的鏈接,如果我的指令是神祕的)

3

要更詳細一點回答這個問題,因爲它早在谷歌搜索出現,請參閱創建電影下面的視頻。從頭ODB文件:

設置表

  • 原則表必須有一個設置爲AutoValue
  • 整數主鍵:

    http://www.youtube.com/watch?v=GYawYO8u3_s

    創建此部分還注意到

  • 鏈接表必須具有多列主鍵,且兩列必須是整數
  • 個表關係必須在關係中設置...對話框
  • 的關係消失,如果更新選項不採取任何行動

改變設置子窗體

  • 子窗體數據>>正文必須設置爲映射表
  • 子表單數據>>鏈接主機字段和鏈接從機字段必須設置爲相關字段(按照上面討論的關係...對話框)
  • 表con trol應該被繪製(當時焦點必須位於子窗體上,以便表格控件位於窗體導航器中子窗體的下方)列應該插入到表格控件中
  • 列Data >> Data field應設置爲相關數據的ID(即不是主窗體)
  • 列數據>>列表內容的類型應該設置爲「sql」
  • 列日期>>列表內容應該設置爲「SELECT」類型名稱「,」GenreID「 FROM「Genre」(其中Genre Name是相關表中的相關字段,GenreID是該表的主鍵,而Genre是相關表)
+0

+1感謝您添加此信息,希望它將會對其他人有所幫助。 – GummiV 2012-05-09 17:42:29