2011-05-03 99 views
0

嗨,數據庫中的多個項目

我有一個由用戶創建的步驟列表,在此列表中我有多個類別。

例如。

​​

我該如何將這些信息存儲在數據庫中。

什麼,我現在想的是:

User_Id -> created by User 
list_Id -> Unique Id of the list 
List_step_a -> matched by list Id 
list_step_b -> Matched by List Id 
List_step_c -> Matched by List ID 

所以我應該使用多個表 如:

table_list_id 
list_step_a 
list_step_b 
List_step_c 

或是否有更好的方式來存儲列表中的數據庫中,以便其更容易爲我拔出。

任何幫助,將不勝感激。 有人能指出我的正確方向嗎?

對於英語感到抱歉。

其他信息: 我已經成功地在XML.is中創建了這個信息,在那裏我可以加載數據庫上的XML文件UserSpecific。

我也試圖在Cakephp中創建它。

回答

0

的 「臺階」 創建表:

CREATE TABLE steps (
`id` INT(11) PRIMARY KEY, 
`user_id` INT(11) [or CHAR(36)], 
`order` INT(11), 
`name` VARCHAR(10) 
); 

然後與步驟填充此。然後當你需要的步驟,只需將他們拉回來:

$this->Step->find('list', array('conditions' => array('Step.user_id' = $user_id), 'order' => array('Step.order'))); 

按它們出來的順序顯示它們。

+0

謝謝。將盡快嘗試。 – Vwake 2011-05-03 22:37:55

2

我將其拆分成2個表(不包括用戶表,它是一個給定的要求)

CREATE TABLE lists (
`id` INT(11) PRIMARY KEY, 
`user_id` INT(11) // or whatever it is in the users table 
`name` VARCHAR(255) // the name of the list 
); 

CREATE TABLE list_items (
`id` INT(11) PRIMARY KEY, 
`list_id` INT(11) // links a list item to a list 
`name` // name of the list item 
); 

加入這些模型與正確的關係,會給你的用戶和所有創建的列表該列表中的項目。希望這可以幫助。

相關問題