線上學習
About Us

線上文檔

首頁 >>線上學習 >>線上文檔

第22章:系統初始化問題(三)

22.3 導入初始數據

當我們設計好了一個資訊系統,正式投入使用之前,還有一項準備工作要做:把系統需要的各種基礎資料和期初資料整理好,一次性錄入系統。比如,一個製造企業,各種物料有2萬多種,為了系統的業務流程正常進行,需要把這2萬多種物料以及它們的期初庫存事先輸入系統。如果全部由人工一條一條地輸入,工作量很大;但是因為業務本身不可能停頓,物料的當前庫存會隨時變化,所以需要在盡可能短的時間內完成這項工作。有沒有高效率的解決辦法呢?有,我們有兩種可能的解決辦法:

 

第一種方式,先手工導入資料,再通過管理控制臺做資料初始化

第二種方式,創建一個輔助範本,利用“新建表單”公式進行初始化

 

其中第一種方式靈活、高效,但是要求用戶會使用 SQL Server 本身提供的“導入資料”功能。如果您熟悉SQL Server 資料庫的管理,建議您選擇第一種方式。如果您對 SQL Server資料庫很陌生,您可以採用第二種方式

 

22.3.1 第一種初始化方式

我們在範本上創建的資料表實際上存儲在一個名為 ESApp SQL Server 資料庫中。例如,我們在訂單範本上創建了兩個資料表,“訂單_主表”和“訂單_明細”,則打開SQL Server 企業管理器,我們會看到,在ESApp資料庫中增加了兩個表,如下圖所示。我們填報的訂單資訊都會存儲在這兩個表中。

 

 

 

 

 

 

 

 

 

22-6 訂單範本上定義兩個資料表

 

 

 

 

 

 

 

 

 

 

 

 

 

22-7 ESApp資料庫中創建了兩個資料表

導入初始資料需要經過兩個步驟:先導入,再初始化。

導入數據

“導入資料”指的是利用 SQL Server 提供的導入資料功能,把資料導入到ESApp資料庫中的資料表中去。導入資料的時候需要明確兩點,第一,從哪里導入?也就是導入資料的來源是什麼。資料的來源可以多種多樣,可以是一個Excel檔,可以是本地的access資料庫,也可以是其他機器上的某個資料庫中的表或視圖,等等。第二,導入到哪里去?也就是導入資料的目的是什麼,在這裏,就是ESApp 資料庫中範本對應的資料表。

下麵我們以把一個Excel檔中的訂單資料導入到訂單_主表為例,說明一下導入資料的操作過程。對於熟悉SQL Server的讀者,這一部分可以跳過。

假設,我們實現整理好了以往的訂單資訊,放在一個Excel文件中,如下圖所示。

 

 

 

 

 

 

 

 

 

22-8 整理好的訂單資料

下麵開始向ESApp 資料庫中導入,操作步驟如下:

1.  登錄到SQL Server企業管理器

2.  展開“資料庫—ESApp—表”,點擊滑鼠右鍵,選擇彈出功能表“所有任務導入數據”,如圖

 

 

 

 

 

 

 

 

 

 

 

 

 

22-9

3.  彈出“DTS導入/導出嚮導”窗口,點擊下一步

4.  從“資料源”下拉清單中選擇資料源類型,在本例中,選擇Excel,然後點擊檔案名旁邊的[…],選擇存放導入資料的Excel文件。點擊[下一步]

 

 

 

 

 

 

 

 

 

 

 

 

 

22-10 選擇導入資料源

5.  選擇導入目的,目的資料庫為ESApp資料庫,點擊[下一步]

 

 

 

 

 

 

 

 

 

 

 

 

 

22-11

6.  選擇“從源資料庫複製表和視圖”,點擊[下一步]

 

 

 

 

 

 

 

 

 

 

 

 

 

22-12

7.  勾選“Sheet1”(訂單_主表的數據在Sheet1上),目的列下拉選擇“訂單_主表”,點擊[下一步]

 

 

 

 

 

 

 

 

 

 

 

 

 

22-13

8.  勾選“立即運行”,點擊[下一步]

 

 

 

 

 

 

 

 

 

 

 

 

 

22-14

9.  在下一屏上點擊[完成],開始導入。

 

 

 

 

 

 

 

 

 

 

 

 

 

22-15

10.              導入完成後,系統給出導入成功的提示

 

 

 

 

22-16

11.              點擊[確定],再點擊[完成]

 

12.               

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

既導入主表,也導入明細

如前所述,訂單範本上定義了兩個資料表,要導入初始資料,就不能僅僅導入了訂單_主表就萬事大吉,訂單_明細表的資料同樣需要導入,假設我們把訂單_明細的初始資料也整理好了,如下所示:

 

 

 

 

 

 

 

 

 

22-17 很多訂單明細資料

現在問題來了,這裏共有12條訂單_明細的資料,它們是一張訂單上的?還是3張訂單上的?如果是3張訂單上的,哪幾條是第一張訂單的?哪幾條是第二張訂單的?

當我們實際填報一份訂單的時候,是不用關心上述問題的,因為正填報的訂單就是一份,無論多少條明細,都是這一份訂單的明細,但當成批導入資料的時候,就不是這麼簡單了,我們必須能夠區分這“大批”的訂單明細資料是怎樣劃分成一張張訂單的。

怎樣區分呢?對每一條明細資料都標注其所在的訂單號,如下圖所示,我們增加了一列“訂單號”

 

 

 

 

 

 

 

 

 

22-18 增加“訂單號”,區分哪條明細屬於哪張訂單

相應地,在訂單範本上,我們也向明細表中增加一個新的資料項目“訂單號”

 

 

 

 

 

 

 

 

 

22-19 在“訂單_明細”表上增加“訂單號”欄位

剩下的事情,就是把整理好的Excel檔中的訂單明細資料,導入到“訂單_明細”表中。操作方法如前文所述。

對導入的資料進行初始化

導入了之後,資料已經在資料庫中存在了,但是通過我的工作臺還看不到,需要到管理控制臺中進行一下“初始化”工作。操作方法如下:

1)  用管理員身份登錄到管理控制臺

2)  在左側選擇範本,右側選中訂單範本,選擇右鍵功能表[初始化數據]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

22-20

3)  彈出“初始化資料”視窗,“範本名稱”下拉清單處顯示當前選中的範本名稱,點擊[下一步]

 

 

 

 

 

 

 

 

 

 

 

22-21

4)  按照提示,選擇範本上的主表,點擊[下一步]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

22-22

5)  按照提示,選擇怎樣決定表單的填報人。

 

 

 

 

 

 

 

 

 

 

 

22-23

6)  如果範本上有不止一個資料表,還要指定其他的資料表與第二步選擇的主表之間的關聯關係。然後點擊[下一步]

 

 

 

 

 

 

 

 

 

 

 

22-24

7)  最後點擊[完成],開始導入

 

 

 

 

 

 

 

 

 

 

 

22-25

 

1.1.2 第二種初始化方式

除了上面所講的方法之外,我們還可以利用“新建表單”公式,完成資料初始化的工作。

步驟是:

1)  事先整理好所有物料的資料,放在一個Excel文件中。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

22-26

2)  按照這個Excel檔一摸一樣的格式,建立一個臨時的範本,比如叫“物料初始化”

3)  在這個範本上定義一條“新建表單”公式

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

22-27

4)  填報臨時範本,擴充足夠的行數,把Excel檔中的內容拷貝粘貼進去,保存。通過“新建表單”公式,臨時範本上的每一條資料,被自動報存成一份“物料表”,如下圖示意。這種方式,相當於我們一次性地填報了2萬多張“物料表”。

 

 

 

 

 

 

 

 

 

 

 

 

22-28

在示例資料庫中,提供了一個“物料初始化”範本,演示了上面所說的過程。