問題
創建需要數據模型支持的新應用程序時,最好的方法是使用數據建模工具來開發邏輯然后是物理的數據模型。盡管這是最好的方法,但並不是每個人都針對功能完善的應用程序執行此操作,更不用說針對小型實用程序應用程序甚至是現有數據庫的附加功能了。
開發過程與數據庫設計一起成為一個迭代過程,在此過程中先開發事物,然后達到某個里程碑,並且需要修改數據庫表以適應更改。同樣,使用工具輔助數據建模是最好的方法,但這是一種簡單的方法來生成表結構,按原樣使用它們,然后在需要更改時重新生成它們。
解
采用編程方法通常是為表,索引甚至存儲過程生成代碼的最佳方法。這可以通過使用VB,C,C#,ASP等來完成。另一種方法是僅使用簡單的Excel電子表格。
過去,我需要生成表來測試數據加載甚至應用程序原型的新方法。一種簡單的方法是只使用Excel,填寫表格,然后根據輸入的參數生成表結構。
下面是創建名為“ dbo.Contact”的表的示例。

if exists (select * from dbo.sysobjects where id = object_id(N'dbo.Contact') and OBJECTPROPERTY(id, N'IsUserTable') = 1) DROP TABLE dbo.Contact GO CREATE TABLE dbo.Contact ( ContactID int identity(1,1), ContactOwnerID int NULL, FirstName varchar (30) , LastName varchar (30) , Account varchar (30) NULL, Title varchar (30) NULL, Department varchar (30) NULL, Birthdate datetime NULL, ReportsTo varchar (30) NULL, LeadSource varchar (30) NULL, Phone varchar (15) , HomePhone varchar (15) NULL, MobilePhone varchar (15) NULL, OtherPhone varchar (15) NULL, Fax varchar (15) NULL, Email varchar (30) , Assistant varchar (30) NULL, AsstPhone varchar (15) NULL, EmailOptOut char (1) NULL, MailingAddress1 varchar (30) NULL, MailingAddress2 varchar (30) NULL, City varchar (30) NULL, State char (2) NULL, Zip varchar (10) NULL, CreatedByID int , CreateDate datetime , ModifiedByID int , ModifiedDate datetime , Comments varchar (2000) ) GO
如您所見,這會生成代碼以創建簡單的表結構。這是創建基礎表以確保應用程序在開發階段按計划工作的好方法。如果需要進行更改,請更新電子表格,然后復制並粘貼代碼以重新生成表格。它不做的一件事就是保留任何樣本或測試數據,因此您可能需要編寫腳本來使重新生成表時使此過程更容易。