2012-12-20 56 views
2

我在2007年訪問2個表是這樣的...不能參加上備註,OLE或超鏈接對象 - Access 2007中 - 外連接

Table 1 - tbEmployees Details 
      FieldName  Data Type 
     PK *ID   Autonumber 
      EmployeeID  Number 
      First   Text 
      ....   ... 

Table 2 - tbEmployeesQualification 
      FieldName Data Type 
    PK *ID   Autonumber 
      CV (attachment) Attachment 
      Qualification/Certificate (memo box) 
      Skills (memo box) 

我在設計階段的關係。我想從上面的表中使用外部聯接,因爲我想爲每個員工附上簡歷。我已經嘗試了以下。 將tbEmployees Details中的ID拖到tbEmployeesQualification上。然後出現連接屬性屏幕...

Left Table -   Right Table - 
    tbEmployees Details  tbEmployeesQualification 
    Left Column -   Right Column 
    ID      Qualification/Certificate 

我已經選擇了選項2 - 包含所有記錄來自...,其中連接字段相等。

爲了測試這個,我使用了Query。當我使用查詢嚮導似乎查詢顯示的結果,其中包括來自tbEmployees詳細所有的數據,所有數據tbEmployeesQualification但

當我使用的查詢設計我收到以下錯誤

...

Cannot join on Memo, OLE, or Hyperlink Object ([tbEmployees Details].ID=[  
tbEmployeesQualification].[Qualification/Certificate]) 

錯誤是正確的。我知道ID具有自動編號作爲數據類型和來自tbEmployeesQualification的資格/證書作爲備忘錄數據類型,因此不能使用內部連接。所以我的問題是我如何解決這個問題?或者可以通過使用外部連接來解決,還是需要做其他我從未見過的事情?

在此先感謝您回答我的問題。

編輯 - 我認爲外鍵也許是答案。我剛剛在tbEmployeesQualification中添加了數據類型爲ID的ID。創建一對多的關係之一是tbEmployees細節和許多是tbEmployeesQualification。我會盡快更新。

+0

我認爲你需要重新設計你的模式。您的tbEmployeesQualification表應該包含一個名爲EmplID的列,該列與tbEmployee表的ID相鏈接。當您加入表格時,請使用「ON tbEmployee.ID = tbEmployeesQualification.EmplID」條件 – cha

+0

如何關閉此問題? – bucketblast

回答

1

該問題已通過使用一對多關係解決。在tbEmployees表中,我在數據類型爲文本的字段名稱(PK)中放置了名字。再次在tbEmployeesQualification表中,我創建了數據類型爲Text的Field Name FirstName。我將tbEmployees表(一)鏈接到tbEmployeesQualification表(很多)。這解決了這個問題。