第 3 課:加入事件類別
在這一課,您會將事件類別加入至應用程式定義檔案 (ADF) 中,然後更新 Notification Services 的執行個體,將所做的變更套用至應用程式資料庫中。然後,您可以檢閱對應用程式資料庫所做的變更。
事件類別入門
事件類別代表 Notification Services 應用程式使用的一種事件類型。當您定義事件類別時,要定義可提交至應用程式及用來產生通知的事件類型。事件類別定義包含事件欄位名稱、資料類型和類型修飾詞。
事件類別可定義其他資訊,例如事件資料和補充資料表的索引。您可以閱讀這個主題來進一步瞭解事件類別:<定義事件類別>。
當您建立應用程式時,Notification Services 會使用事件類別定義來建立用來儲存、收集及管理事件資料的資料表、檢視、索引和預存程序。
WeatherData 事件類別
針對這個應用程式,您要將 WeatherData 事件類別加入至 ADF 中。這個事件類別有 5 個事件欄位:City、Date、Low、High 和 Forecast。這些欄位描述您以後要提交至應用程式的事件資料。對於每一個事件欄位,事件類別會定義欄位名稱、資料類型和欄位修飾詞。
為了提升產生通知的效能,事件類別也在 WeatherData 事件類別的 City 欄位上指定索引。
將事件類別 XML 加入至 ADF
此章節的 XML 會定義事件類別。請檢查 XML,然後遵照指示將 XML 複製到 ADF。
若要將事件類別 XML 加入至 ADF
按一下 [複製程式碼],將 XML 複製到 Windows 剪貼簿。
<!-- Event Classes --> <EventClasses> <EventClass> <EventClassName>WeatherData</EventClassName> <Schema> <Field> <FieldName>City</FieldName> <FieldType>nvarchar(35)</FieldType> <FieldTypeMods>not null</FieldTypeMods> </Field> <Field> <FieldName>Date</FieldName> <FieldType>datetime</FieldType> <FieldTypeMods>not null</FieldTypeMods> </Field> <Field> <FieldName>Low</FieldName> <FieldType>float</FieldType> <FieldTypeMods>not null</FieldTypeMods> </Field> <Field> <FieldName>High</FieldName> <FieldType>float</FieldType> <FieldTypeMods>not null</FieldTypeMods> </Field> <Field> <FieldName>Forecast</FieldName> <FieldType>nvarchar(3500)</FieldType> <FieldTypeMods>not null</FieldTypeMods> </Field> </Schema> <IndexSqlSchema> <SqlStatement>CREATE INDEX myIndex ON WeatherData ( City ); </SqlStatement> </IndexSqlSchema> </EventClass> </EventClasses>
在 [方案總管] 中,開啟 [WeatherADF.xml]。
將下列註解取代成您剛才複製的 XML。
<!-- Replace with EventClasses XML -->
在 [檔案] 功能表上,選取 [儲存 WeatherADF.xml]。
更新 Notification Services 的執行個體
在修改 ADF 之後,您要更新 Notification Services 的執行個體,將事件類別物件加入至應用程式資料庫中。
若要更新 Notification Services 的執行個體
在 [物件總管] 中,展開 [Notification Services]。
以滑鼠右鍵按一下 [教學課程],指向 [工作],然後選取 [更新]。
在 [更新執行個體] 對話方塊中,按一下 [瀏覽],找出並選取 TutorialICF.xml 檔案,然後按一下 [開啟]。
在 [參數] 方格中,檢閱參數的值。
這些值應該是正確的,因為您已在第 2 課中視需要修改它們。如果您必須編輯這些值,請回到第 2 課瞭解如何編輯 ICF 中的參數預設值。
按一下 [確定]。
檢閱 [Notification Services - 更新摘要] 對話方塊,然後按一下 [更新]。
當更新動作完成時,請按一下 [關閉]。
請檢閱應用程式資料庫中的變更。
當您更新執行個體時,Notification Services 會在 TutorialWeather 應用程式資料庫中加入事件類別的資料表、檢視和預存程序。
- dbo.WeatherData 事件檢視是應用程式正在處理的目前事件集。以後您要撰寫產生通知的查詢時,要從這個檢視選取資料。
- dbo.NSWeatherDataEvents 資料表是包含事件類別之事件資料的基礎資料表。事件資料會留在這份資料表中,直到 Vacuumer 資料移除處理序將它移除為止。
注意: 不要直接在應用程式和執行個體資料庫中修改資料。若要加入事件資料,您必須使用其中一個支援的事件提交方法,例如內建事件提供者、事件提交預存程序或 API。如需詳細資訊,請參閱<定義事件提供者>。
您可以使用 [物件總管] 來檢查 TutorialWeather 資料庫中的這些物件。您必須重新整理 [物件總管] 才能看到新物件。
下一課
請參閱
概念
其他資源
定義事件類別
建立 Notification 解決方案
SQL Server Notification Services 簡介