2012-03-07 23 views
0

我正在構建一個網站,供員工用來記錄他們已完成的工作。該網站包含提交信息的頁面,查看信息的頁面以及包含姓名,電子郵件,電話等員工個人信息的頁面。我使用ASP.NET Membership進行身份驗證。所有的代碼都是VB。我的問題:需要關於在我的ASP.NET網站中使用數據庫的最佳實踐的建議

1)ASP.NET Membership只存儲成員的用戶名和電子郵件。我想存儲額外的信息,如姓名,電話號碼等。我可以更新會員數據庫中的表格以包含此信息嗎?或者我應該將這些信息存儲在單獨的數據庫中?我的目標是填充其中一個頁面上的文本框,其中包含當前登錄的用戶的特定數據。

2)已完成的工作將存儲在另一個數據庫中,因爲從邏輯上講它與會員資料分開。從這個單獨的「工作」數據庫中提取和顯示記錄的最有效方法是哪些,這些記錄是特定於已登錄且已針對成員數據庫進行過驗證的用戶的記錄?

3)我在爲「工作」數據庫設計表格時遇到了麻煩。存儲在數據庫中的每條記錄都將代表一天的工作量。但是,這一天將會發生一些活動。每項活動都會有一種活動類型,地點和工作時間。一名員工可以完成1項活動或100項活動。我假設我需要一個表格來處理活動,然後將其與工作表相關聯。這聽起來正確嗎?

+0

你可以使用內置的[簡介提供商(http://msdn.microsoft.com/en-us/library/2y3fs9xs(V = VS.100)的.aspx)來添加額外的信息,如圖片,電話號碼,第一個/姓氏等。 – 2012-03-07 09:32:02

回答

1

對於你的第一點我會建議你創建你自己的用戶表,並將此表與會員用戶表與guid viz關聯起來。在你的表中保留userid文件並將其與成員表關聯起來。

二點會自動得到解決,一旦你將創建自己的用戶表中,所有你需要的是相關工作和用戶表(由您創建)來從工作

記錄,並在最後,如果你是爲活動創建新表格如何將它與工作表格相關聯,同樣,您將有多次出現記錄,而我建議不要爲活動創建另一個表格,將其保存在工作表本身中,就像創建新表格一樣,你將不得不提供與會導致冗餘的工作的關係。

希望這會有所幫助。

+0

嗨,謝謝你的回覆!對於每個用戶,工作表中每天會有一個條目。 (工作條目基本上是每日報告)對於每個工作條目,都有不確定數量的活動完成。 (可能在1到100個不同的活動中都有用戶生成的解釋。)由於我不知道會有多少活動,因此我不知道要向工作表添加多少列。我不得不在工作表中添加足夠多的列來覆蓋可能的最大數量的活動,這是未知的。這對我來說似乎是低效/多餘的。 – sevenyearsrust 2012-03-07 09:59:29

+0

這就是爲什麼我正在考慮爲活動創建一個表格,並與工作表具有一對多的關係。這樣,我的表格結構就會乾淨簡單,不會對活動數量進行猜測/過度補償。這些活動只會根據需要插入表中。 – sevenyearsrust 2012-03-07 10:03:32

+0

在這種情況下,最好有不同的表格,但如果你與工作和活動的關係沒有意義,那麼最好只有一個表格。 – 2012-03-07 10:33:57

相關問題