我在所有數據庫是新的,有在MS Access設置3和表之間的關係有些困難2013年在MS Access
的想法是,我有賬戶信息表,表與此帳戶相關的呼叫以及包含所有可能的呼叫響應的一個表格。我嘗試了不同的組合,但沒有任何效果。
- 1st table - Accounts:AccountID(PK)| AccountName |語言|國家|電子郵件
- 第二個表格 - Calls:CallID(PK)|帳戶|響應|評論|日期
- 第三表 - 響應:ResponseID(PK)|響應
我在所有數據庫是新的,有在MS Access設置3和表之間的關係有些困難2013年在MS Access
的想法是,我有賬戶信息表,表與此帳戶相關的呼叫以及包含所有可能的呼叫響應的一個表格。我嘗試了不同的組合,但沒有任何效果。
當您有一個表時,它通常有一個主鍵字段,它是該表的主索引。爲了讓您將其與其他表連接起來,通常通過在另一個表上設置外鍵來實現。
假設你有Accounts
表,並且它有AccountID
字段作爲主鍵。該字段是唯一的(意味着該字段沒有重複值)。
現在,您有另一個表Calls
,您在那裏有一個外部關鍵字字段AccountID
,它指向Accounts
表。
基本上你有Accounts
具有以下數據:
AccountID| AccountName | Language | Country | Email
1 | FirstName | EN | US | [email protected]
2 | SecondName | EN | US | [email protected]
現在你有其他的表Calls
與許多電話
CallID(PK) | AccountID(FK) | ResponseID(FK) | Comment | Date
1 | 1 | 1 | a comment | 26/10
2 | 1 | 1 | a comment | 26/10
3 | 2 | 3 | a comment | 26/10
4 | 2 | 3 | a comment | 26/10
可以看到一對多的關係:一個帳戶ID(在我的例子帳戶ID = 1),以多次調用(在我的例子2行與帳戶ID = 1爲外鍵,行1 & 2)和帳戶ID = 2也具有2行的呼叫的(行3和4)
也是一樣的Responses
表
這很好,它對我來說非常適合,但是當我嘗試創建這種關係時(表格Accounts和Calls之間),我得到了錯誤消息「關係必須在具有相同數據類型的相同數量的字段上」。我檢查兩種數據類型,他們是「數字」。另外,讓我提及目前呼叫表是空的。還有最後一件事,如果我想在通話表中輸入一個賬戶,我可以做什麼,而不是通過號碼,而是賬戶名稱。 –
調用中的字段應該是長整數類型,並且帳戶中的PK字段應該是自動編號類型 – Leon
謝謝leonid,我想我理解了這個概念,現在一切正常。還有一件事我正面臨着。我想知道如何在'Calls'表中輸入一個新的實體,而不是使用AccountID,而是使用賬戶名稱(理由:更容易使用名稱而不是數字)並保持當前關係? –
使用該表的結構:
Accounts : AccountID(PK) | AccountName | Language | Country | Email
Calls : CallID(PK) | AccountID(FK) | ResponseID(FK) | Comment | Date
Responses: ResponseID(PK) | Response
謝謝你的回答和解釋Palec,+1。我向你致以謝意,但現在我有了新的「爬山」。 –
實際上定義 Access中的關係打開關係窗口...
...然後按照詳細說明這裏:
How to define relationships between tables in an Access database
你能解釋一下你的 '關係' 是什麼意思?你想在其他表中設置外鍵的主鍵嗎? – Leon
我想我有FK和PK的想法(如果不是,請糾正我),但我的意思是不同領域之間的關係。例如:(第一張桌子)AccountID-(第二張桌子)帳戶:一對多。 –