❶ 用VB做一個資料庫該怎麼做給點思路 或者從哪下手
大致有以下幾步:讀取文件 -- 格式化數據 -- 關閉文件 -- 使用數據如果數據量較大,需要進行篩選,且存放數據的源文件可能不定時變更,那麼我們可以用一個臨時文件來存放有用的數據,這樣可大大提高程序的效率.要 [格式化數據]時,我們首先要進行篩選,然後還得進行分類,這樣文件中的字元串才能被轉換成有用的信息來供程序使用.這樣一來,不用說,處理速度將大大減慢,而且就算你設計的數據格式比較科學,當數據量非常大時,文件的容量也會變的讓普通計算機無法承受. 相對文本文件來說資料庫的使用也大致分為以下幾步:打開資料庫 -- 查找數據 -- 使用數據 -- 關閉資料庫從中可以看出,裡面少了一步格式化數據,因為資料庫本身在存儲數據時,它就是按照一定的格式來進行存儲的. 其次是,資料庫與文本文件返回數據的方法不同.如果把文本文件比作一個Textbox 的話,那麼資料庫更像是一個ListBox.使用文本文件時我們需要從整個Textbox中取出有用的信息,並進行處理,而Listbox則可以根據需要返回特定的某一項.由於VB本身並不帶有可以訪問資料庫的類,所以我們需要引用一個包含能訪問資料庫的類來使用資料庫.這里我們採用ADODB,相比DAO和能訪問資料庫的API來說,它比DAO更靈活,更強大;而比起API,它更簡單易用,更適合初學者.而Access資料庫比起sql,也相對簡單了很多,且能夠滿足中小型應用程序的需要,所以我們在使用資料庫時,選擇了Access.就像使用文本文件來存儲數據一樣,我們需要先設計好數據結構,只不過在設計Access資料庫的結構時,我們需要用到其它的程序來進行詳細的規劃.建議採用的程序是office中的Access或VB自帶的VISDATA.當資料庫設計好了以後,我們可以開始"資料庫編程"了.首先,我們需要引用ADO.具體的方法是,在"工程" -- "引用" 中,找到"Microsoft ActiveX Data Object *.* Library",這里的"*.*"是指的時ADO的版本號,一般來說,應用程序或ActiveX控制項都具有向下兼容性,所以我們盡可能選擇比較新的版本.以確保程序在能識別舊版本Access的同時,也能識別較新版本的Access.然後我們需要在程序中創建一個對象.就好比我們在窗體上添加一個FileBox才能看到文件名一樣,只有創建了ADO對象,我們才能夠訪問資料庫.常用的對象有兩個,Connection和Recordset.創建這兩個對象的具體方法是:1.在引用後,使用New關鍵字,如 Private Conn As New ADODB.Connection Private Reco As New ADODB.Recordset2.在沒引用時,用CreateObject創建對象: Dim Conn,Reco Set Conn = CreateObject("ADODB.Connection") Set Reco = CreateObject("ADODB.Recordset")創建了對象之後,下一步我們要做的就是打開資料庫了.先看下面的代碼,可以成功的打開資料庫. Conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Main.mdb" 這句代碼打開了D盤中的Main.mdb這個資料庫. Connection.Open方法的第一個參數是連接代碼,它將傳遞給系統的資料庫引擎.前半部分"Provider= Microsoft.Jet.OLEDB.4.0",它表示了資料庫的類型.不同的資料庫可能會不同.後半句"Source=d:\main.mdb"它表示了資料庫所在的絕對路徑.打開資料庫之後,還要打開表.假如資料庫中有一個表,表名為"Users",欄位有兩個,一個為用戶名,一個為密碼.那麼看以下代碼.1.想返回"Users"中,[用戶名]為"去年煙花"的[密碼] Recordset.open "Select 密碼 From Users Where 用戶名='去年煙花'",Connection,1,1 之後我們就可以把用戶輸入的密碼進行比較,看是否允許登錄. If Recordset.eof and Recordset.bof then Msgbox "用戶不存在!",16 Else If PassWord =Recordset("密碼").value then msgbox "登錄成功!",64 Else msgbox "密碼錯誤!",32 End If End If Recordset.Close2.假設Admin已經成功登錄系統,我們想把所有的用戶名和密碼都顯示出來 Recordset.open "Select * From Users",Connection,1,1 這時,表已經被打開,我們就用以下代碼把它顯示出來. Do whlie Not Recordset.eof Print "用戶名: " & Recordset("用戶名").value & "密碼: " & Recordset("密碼").value Recordset.MoveNext Loop Recordset.Close由以上代碼示例可以看出,打開表時,可以只打開其中的一個欄位,也可以打開所有.第一個參數是SQL語句.Select [欄位名] From 表名 [Where 條件]這里的條件可以省略.且欄位名也可以用"*"來代替所有欄位.需要注意的是,如果你用(1)中的方法打開,那麼(2)後面顯示的代碼就不能再用在(1)中.因為(1)里並沒有打開[用戶名]欄位,所以這一句Recordset("密碼")就沒有值存在,還有可能出錯.後面的條件,可以用"="、">"、"<"等運算符.比如 "Where ID > 32".(這里假設[ID]為數字型.) 這是打開的部分.第二個很重要的部分就是查詢記錄.資料庫它並不是把所有記錄全部放到一個變數中備用的.而是以"當前記錄"的形式來返回一個值.所以我們想從中找到有用的信息,就必須要對信息進行定位/篩選.定位: 移動到下一條 Recordset.MoveNext 移動到上一條 Recordset.MovePrevious 移動到最後一條 Recordset.MoveLast 移動到第一條 Recordset.MoveFrist 移動到某一條 Recordset.Move Number篩選: Recordset.Find "條件"如:[用方法(2)打開表之後] Private Sub Command1_Click() Recordset.Find "用戶名=" & "text1.text" If Recordset.Eof <> True Then Msgbox "該用戶的密碼是:" & Recordset("密碼").value,64 Else Msgbox "未找到該用戶的資料!",16 End If End SubMoveNext 只有當Eof不為True時,才可用,否則發生錯誤.而MovePrevious剛是Bof不為True時.... 而只要Eof 和 Bof中有一個不為真時,也就是說只要有一條記錄時,它就可以使用. Find 方法中的條件和Open時的第一個參數中的條件表述方法是完全一致的.當在已打開的記錄集中,找不到該記錄時,Eof為True.找到則當前的值就是符合條件的記錄. 第三個部分就是添加/修改記錄. 修改記錄很簡單,先按以上的方法找到相關記錄之後,給記錄賦值就可以了. 比如:[(修改密碼)按方法(1)打開表之後] Recordset("密碼").value = "123456" Recordset.Updata 需要注意的就是,在修改完成後,要調用Updata方法,這樣修改才能生效.而添加記錄則可以用以下代碼來實現: Recordset.addnew Recordset("用戶名").value = "Admin" Recordset("密碼").value = "Admin" Recordset.Updata這里,先要調用Addnew方法,增加一條新記錄,然後對這個新記錄中的各欄位賦值,最後再調用Updata方法.到這里就差不多了,最後說一下上面提到的幾個方法.Recordset.Open SQL語句,數據源,游標類型,打開方法SQL語句不用說了,就是Select那啥的,目的就是按要求從表中返回數據 數據源就是一個打開之後的Connection對象. 去他媽的游標類型,填1就可以了 [偷笑ing] 打開方法對應了幾個常數,具體哪幾個可以從對象瀏覽器里看. 對應數值的意義: 1 只讀 2 獨占 3 可寫 4 自已可寫,別人可讀Connection.open 連接代碼,伺服器用戶名,密碼 這里的連接代碼就不在多說了,伺服器用戶名,密碼只有在連接遠程資料庫時才用到.
❷ 開發一個完整的資料庫系統具體的流程是什麼
一:表中應該避免可為空的列; 二:表不應該有重復的值或者列; 三: 表中記錄應該有一個唯一的標識符 在資料庫表設計的時候,資料庫管理員應該養成一個好習慣,用一個ID號來 唯一的標識行記錄,而不要通過名字、編號等欄位來對紀錄進行區分。每個表都應該有一個ID列,任何兩個記錄都不可以共享同一個ID值。另外,這個ID值最 好有資料庫來進行自動管理,而不要把這個任務給前台應用程序。否則的話,很容易產生ID值不統一的情況。 另外,在資料庫設計的時候,最好還能 夠加入行號。如在銷售訂單管理中,ID號是用戶不能夠維護的。但是,行號用戶就可以維護。如在銷售訂單的行中,用戶可以通過調整行號的大小來對訂單行進行 排序。通常情況下,ID列是以1為單位遞進的。但是,行號就要以10為單位累進。如此,正常情況下,行號就以10、20、30依次擴展下去。若此時用戶需 要把行號為30的紀錄調到第一行顯示。此時,用戶在不能夠更改ID列的情況下,可以更改行號來實現。如可以把行號改為1,在排序時就可以按行號來進行排 序。如此的話,原來行號為30的紀錄現在行號變為了1,就可以在第一行中顯示。這是在實際應用程序設計中對ID列的一個有效補充。這個內容在教科書上是沒 有的。需要在實際應用程序設計中,才會掌握到這個技巧。 四:資料庫對象要有統一的前綴名 一個比較復雜的應用系統,其對應的資料庫表往往以千計。若讓資料庫管理員看到對象名就了解這個資料庫對象所起的作用,恐怕會比較困難。而且在資料庫對象引用的時候,資料庫管理員也會為不能迅速找到所需要的資料庫對象而頭疼。 為此,筆者建立,在開發資料庫之前,最好能夠花一定的時間,去制定一個資料庫對象的前綴命名規范。如筆者在資料庫設計時,喜歡跟前台應用程序協商,確定 合理的命名規范。筆者最常用的是根據前台應用程序的模塊來定義後台資料庫對象前綴名。如跟物料管理模塊相關的表可以用M為前綴;而以訂單管理相關的,則可 以利用C作為前綴。具體採用什麼前綴可以以用戶的愛好而定義。但是,需要注意的是,這個命名規范應該在資料庫管理員與前台應用程序開發者之間達成共識,並 且嚴格按照這個命名規范來定義對象名。 其次,表、視圖、函數等最好也有統一的前綴。如視圖可以用V為前綴,而函數則可以利用F為前綴。如此資料庫管理員無論是在日常管理還是對象引用的時候,都能夠在最短的時間內找到自己所需要的對象。 五:盡量只存儲單一實體類型的數據 這里將的實體類型跟數據類型不是一回事,要注意區分。這里講的實體類型 是指所需要描述對象的本身。筆者舉一個例子,估計大家就可以明白其中的內容了。如現在有一個圖書館里系統,有圖書基本信息、作者信息兩個實體對象。若用戶 要把這兩個實體對象信息放在同一張表中也是可以的。如可以把表設計成圖書名字、圖書作者等等。可是如此設計的話,會給後續的維護帶來不少的麻煩。 如當後續有圖書出版時,則需要為每次出版的圖書增加作者信息,這無疑會增加額外的存儲空間,也會增加記錄的長度。而且若作者的情況有所改變,如住址改變 了以後,則還需要去更改每本書的記錄。若這個作者的圖書從資料庫中全部刪除之後,這個作者的信息也就盪然無存了。很明顯,這不符合資料庫設計規范化的需 求。 遇到這種情況時,筆者建議可以把上面這張表分解成三種獨立的表,分別為圖書基本信息表、作者基本信息表、圖書與作者對應表等等。如此設計以後,以上遇到的所有問題就都引刃而解了。
❸ 資料庫的開發流程是什麼
這是一個非常復雜的問題。建議這位網友去看看有關軟體工程的書籍。當然,看書是一件非常煩悶的事情,在這,盡管試試將我的經驗寫一點吧。
首先,要明確你要做一個什麼系統。想達到什麼目的。想怎樣去使用。有了明確的目標後,便要開始計劃整個資料庫系統該怎樣去做。
第二,是選擇資料庫後台。資料庫是保存數據的工具,可以理解為保存數據的一個大倉庫,它把你所需要的數據全部保存起來。但要怎樣使用這些數據,使之可以根據你的需要顯示出來,那就不是資料庫的責任了,這就需要程序來實現了。不同的資料庫後台各有優點缺點,不可一概而論哪個好哪個差,要看系統實際來斟酌。即是說,確定目標後就需要選擇資料庫。
第三,確定後台資料庫的內容,即確定數據結構。既然整個資料庫等於一個大倉庫,此時就要把倉庫劃分成一個個區域,用於保存不同類別的東西。這就是確定數據表及每個表的欄位及各欄位的數據類型。這是非常巨大的工作,你需要把有可能使用到的內容都設計到你的數據表中,以便以後可以保存及調用數據。還要想到表與表的關系,欄位與欄位的關系。好的數據結構會使到整個程序設計方便、科學、全面。這些內容,必須去查看相關書籍,同時不斷積累經驗,並非三言兩語可以說得清楚了。
第四,選擇合適的前台開發工具。對於後台資料庫的操作,目前常用的前台開發工具基本都可以與之相連並對之操作,但是不同的開發語言有各自的長處。選擇哪一種語言並不太重要,最重要是看你是否願意一心一意鑽研下去。對於初學者,什麼語言都是一樣的,就如小孩子學語言,學中英意日其實都一樣容易,也一樣難。
第五,當清楚資料庫後台和開發前台的特性與功能後,就可以開始規劃系統的流程了。一般可以根據系統功能先將其劃分為幾大功能模塊,然後再細分為各個細功能模塊,然後對於各個功能模塊進行設計。一般流程可以是這樣的:
1、設計流程圖。把整個功能用流程的方式顯示出來,讓自己的思路清楚地記錄在流程圖上,這樣可以輕易地模擬模塊的運算過程,查找出不合理的地方進行修改。
2、編寫程序。確定流程合理無誤後,便可以開發進行程序的編寫。由於現時硬體的強大,對語句的要求已經不再強調。只要可以達到目的,就可以了。
第六,試運行程序。完成一個功能後,可以試運行,輸入數據進行測試,不斷修改,最後達到完全無誤。
第七,測試。完成程序後,就要進行全面的測試。一般來說,自己是找不到自己的錯誤的。明知是錯就不會寫進去,所以我喜歡找別人來為我測試。讓別人去用,而且是讓別人隨便地用,不一定按自己所說的操作方法去用。這樣最容易找到程序中的錯誤。
第八,不斷地修改。不斷修改程序,使其所有的漏洞都改正過來。
第九,編譯。程序確認無誤後,就可以進行編譯。
第十,投入使用。
其實我所寫的並不能回答這個問題,完全解答這個問題,最後還是去學習一下軟體工程。不看書總是不行的。希望可以為你帶來一點點幫助吧。
❹ 在系統設計中,對資料庫的設計應考慮哪些設計原則
資料庫是整個軟體應用的根基,是軟體設計的起點,它起著決定性的質變作用,因此我們必須對資料庫設計高度重視起來,培養設計良好資料庫的習慣,是一個優秀的軟體設計師所必須具備的基本素質條件!
那麼我們要做到什麼程度才是對的呢?下面就說說資料庫設計的原則:
1、資料庫設計最起碼要佔用整個項目開發的40%以上的時間
資料庫是需求的直觀反應和表現,因此設計時必須要切實符合用戶的需求,要多次與用戶溝通交流來細化需求,將需求中的要求和每一次的變化都要一一體現在資料庫的設計當中。如果需求不明確,就要分析不確定的因素,設計表時就要事先預留出可變通的欄位,正所謂「有備無患」。
2、資料庫設計不僅僅停留於頁面demo的表面
頁面內容所需要的欄位,在資料庫設計中只是一部分,還有系統運轉、模塊交互、中轉數據、表之間的聯系等等所需要的欄位,因此資料庫設計絕對不是簡單的基本數據存儲,還有邏輯數據存儲。
3、資料庫設計完成後,項目80%的設計開發在你腦海中就已經完成了
每個欄位的設計都是有他必要的意義的,你在設計每一個欄位的同時,就應該已經想清楚程序中如何去運用這些欄位,多張表的聯系在程序中是如何體現的。換句話說,你完成資料庫設計後,程序中所有的實現思路和實現方式在你的腦海中就已經考慮過了。如果達不到這種程度,那當進入編碼階段後,才發現要運用的技術或實現的方式資料庫無法支持,這時再改動資料庫就會很麻煩,會造成一系列不可預測的問題。
4、資料庫設計時就要考慮到效率和優化問題
一開始就要分析哪些表會存儲較多的數據量,對於數據量較大的表的設計往往是粗粒度的,也會冗餘一些必要的欄位,已達到盡量用最少的表、最弱的表關系去存儲海量的數據。並且在設計表時,一般都會對主鍵建立聚集索引,含有大數據量的表更是要建立索引以提供查詢性能。對於含有計算、數據交互、統計這類需求時,還要考慮是否有必要採用存儲過程。
5、添加必要的(冗餘)欄位
像「創建時間」、「修改時間」、「備注」、「操作用戶IP」和一些用於其他需求(如統計)的欄位等,在每張表中必須都要有,不是說只有系統中用到的數據才會存到資料庫中,一些冗餘欄位是為了便於日後維護、分析、拓展而添加的,這點是非常重要的,比如黑客攻擊,篡改了數據,我們便就可以根據修改時間和操作用戶IP來查找定位。
6、設計合理的表關聯
若多張表之間的關系復雜,建議採用第三張映射表來關聯維護兩張表之間的關系,以降低表之間的直接耦合度。若多張表涉及到大數據量的問題,表結構盡量簡單,關聯也要盡可能避免。
7、設計表時不加主外鍵等約束性關聯,系統編碼階段完成後再添加約束性關聯
這樣做的目的是有利於團隊並行開發,減少編碼時所遇到的問題,表之間的關系靠程序來控制。編碼完成後再加關聯並進行測試。不過也有一些公司的做法是乾脆就不加表關聯。
8、選擇合適的主鍵生成策略
❺ 經濟管理資料庫建設和信息系統開發的總體構想
一、經濟管理資料庫建設的總體目標
1.資料庫基本原理
(1)資料庫概念。資料庫是用來存儲信息或數據的機制。在資料庫中,用戶可以按照特定的方式存儲數據,一旦數據被存儲在資料庫中,用戶可以方便查詢這些信息,同時,用戶也可以設定一定條件來查詢所需要的信息。
在資料庫中,表是數據物理存儲的最主要、最基本的單位。用戶訪問資料庫時,通常是從表中查詢所需要的數據,資料庫可以由多張表組成,但這些表之間存在著一定關系。
(2)資料庫設計。在資料庫設計工作全面開展之前,設計人員必須花一些時間來理解數據所涉及到的工作過程和工作內容,主要包括工作的實體、數據以及規則,並且把這些業務屬性轉換為業務模型,這些工作就是資料庫設計過程,其包括3個基本階段:第一,需求信息的懼階段;第二,數據建模階段;第三,資料庫設計和規范化階段。
2.經濟管理資料庫建設的總體目標
中央公益性地質調查隊伍經濟管理資料庫建設的總體目標是:建立中央公益性地質調查隊伍預算(含績效)管理資料庫、財務信息資料庫、綜合統計資料庫,並進行數據跟蹤更新,見圖11-1。以這3個數據為基礎,根據工作需要建立綜合分析資料庫,為用戶提供基礎資料和數據。
圖11-1 中央公益性地質調查隊伍經濟管理資料庫建設的總體目標
二、經濟管理信息系統開發的總體思路
1.管理信息系統
(1)概念。經濟管理信息系統是以數據為為中心,在實施方案階段,完成經濟管理數據處理、常規化的管理工作。它完成經濟管理大多數數據的收集、加工和存儲,是經濟管理的信息源,是經濟管理信息系統的基礎。這與經濟管理工作中緊密相關,因此該類系統的開發受實際工作的管理模式、運作模式、管理過程和職能的影響。
(2)特徵。管理信息系統主要特徵是人機系統特徵,主要反映在系統的人機分工及系統如何構建、運行和評價等方面。人機系統主要是要求系統在人與計算機之間應該有個合理的分工,能讓計算機完成的工作應盡量由計算機來完成,但某些不可預見因素的制約,可以讓有些信息處理由人工來完成。
管理系統的人機特點,影響著系統開發者和系統用戶的知識結構,「以計算中為基礎」要求系統的開發者必須具備計算機及其在信息處理中應用的知識,要求開發者應了解人作為系統組成部分的能力以及人作為信息使用者的各種行為。
(3)經濟管理信息系統開發的總體思路。中央公益性地質調查隊伍經濟管理信息系統是由若干個子系統組成,各子系統具有自己本身的經濟管理功能,具體涉及經濟管理某方面,但它們之間又相互聯系,通過共同的數據結構模式,實現數據信息的共享。
經濟管理信息系統開發的總體思路是確定中央公益性地質調查隊伍經濟管理的需求,把這些需求分解成若干個下一級需求,按照需求分別開發子系統,以預算管理信息系統、財務信息系統和綜合統計管理信息系統為基礎,逐漸開發各種綜合分析系統群,見圖11-2。
圖11-2 中央公益性地質調查隊伍經濟管理信息系統
三、經濟管理信息系統的功能
經濟管理信息系統的功能是使用戶通過可以完成各種工作,例如數據的處理、管理過程的實現等。
按經濟管理的內容不同,可以分為多個管理子系統,且各種子系統所組成的要素不同,管理的重點也不同,因此系統的功能也不同。但每個子系統都專門為管理某方面而開發,其功能具有專屬性。
❻ 我要開發一個小型的資料庫應該怎樣做
簡單的小型的就用access 做就足夠了,按照你上面的內容,先做好資料庫的表,欄位就用英文的,然後還可以標注中文的,這樣你就不會混淆了。
如果再大一點的話,就用sql server 來做,剛開始是有點難度,不過時間長了,就不難了,希望你成功。
❼ 誰能提供一下財務軟體資料庫設計的思路
是用什麼資料庫開發呢?SQL或者ACCESS呢!其實原理也是一樣的,只不過在設計時會不同。
再設計資料庫之前先做好系統功能模塊的分析,具體結構分析,然後開始畫ER圖,確定需要用到實體與屬性。最後建表,搞觸發器、存儲過程等等。
財務數據最重要我覺得是報表的統計!建設你上網下載一個財務軟體,分析它的功能,從中吸取經驗再分析你的軟體要達到什麼功能,最後就可以設計資料庫了。
❽ 說明在設計資料庫表時你是如何考慮的
資料庫是整個軟體應用的根基,是軟體設計的起點,它起著決定性的質變作用,因此我們必須對資料庫設計高度重視起來,培養設計良好資料庫的習慣,是一個優秀的軟體設計師所必須具備的基本素質條件! 那麼我們要做到什麼程度才是對的呢?下面就說說資料庫設計的原則: (1)、資料庫設計最起碼要佔用整個項目開發的40%以上的時間
資料庫是需求的直觀反應和表現,因此設計時必須要切實符合用戶的需求,要多次與用戶溝通交流來細化需求,將需求中的要求和每一次的變化都要一一體現在資料庫的設計當中。如果需求不明確,就要分析不確定的因素,設計表時就要事先預留出可變通的欄位,正所謂「有備無患」。 (2)、資料庫設計不僅僅停留於頁面demo的表面 頁面內容所需要的欄位,在資料庫設計中只是一部分,還有系統運轉、模塊交互、中轉數據、表之間的聯系等等所需要的欄位,因此資料庫設計絕對不是簡單的基本數據存儲,還有邏輯數據存儲。 (3)、資料庫設計完成後,項目80%的設計開發在你腦海中就已經完成了 每個欄位的設計都是有他必要的意義的,你在設計每一個欄位的同時,就應該已經想清楚程序中如何去運用這些欄位,多張表的聯系在程序中是如何體現的。換句話說,你完成資料庫設計後,程序中所有的實現思路和實現方式在你的腦海中就已經考慮過了。如果達不到這種程度,那當進入編碼階段後,才發現要運用的技術或實現的方式資料庫無法支持,這時再改動資料庫就會很麻煩,會造成一系列不可預測的問題。 (4)、資料庫設計時就要考慮到效率和優化問題 一開始就要分析哪些表會存儲較多的數據量,對於數據量較大的表的設計往往是粗粒度的,也會冗餘一些必要的欄位,已達到盡量用最少的表、最弱的表關系去存儲海量的數據。並且在設計表時,一般都會對主鍵建立聚集索引,含有大數據量的表更是要建立索引以提供查詢性能。對於含有計算、數據交互、統計這類需求時,還要考慮是否有必要採用存儲過程。 (5)、添加必要的(冗餘)欄位 像「創建時間」、「修改時間」、「備注」、「操作用戶IP」和一些用於其他需求(如統計)的欄位等,在每張表中必須都要有,不是說只有系統中用到的數據才會存到資料庫中,一些冗餘欄位是為了便於日後維護、分析、拓展而添加的,這點是非常重要的,比如黑客攻擊,篡改了數據,我們便就可以根據修改時間和操作用戶IP來查找定位。 (6)、設計合理的表關聯 若多張表之間的關系復雜,建議採用第三張映射表來關聯維護兩張表之間的關系,以降低表之間的直接耦合度。若多張表涉及到大數據量的問題,表結構盡量簡單,關聯也要盡可能避免。 (7)、設計表時不加主外鍵等約束性關聯,系統編碼階段完成後再添加約束性關聯 這樣做的目的是有利於團隊並行開發,減少編碼時所遇到的問題,表之間的關系靠程序來控制。編碼完成後再加關聯並進行測試。不過也有一些公司的做法是乾脆就不加表關聯。 (8)、選擇合適的主鍵生成策略