搜尋本站文章

2007-11-28

無所不在的 IntelliSense Everywhere -- SQL Server 2008


Microsoft IntelliSense 提供一組使語言參考更容易存取的選項陣列。當編碼時,您不需要讓編輯器在語言元素上執行搜尋。您可以保留您的內容、尋找您需要的資訊、將語言元素直接插入程式碼中,甚至可以讓 IntelliSense 自動完成您的輸入動作。
有使用過 Visual Studio 的朋友,應該都知道這項方便好用的功能,尤其是在 Visual Studio 2005 上,對於像是 VBScript、XML、XML Schema、DTD、Web Config 組態檔等等都有提供。
簡單講 IntelliSense 這項功能,就是讓您在撰寫程式碼時,可以自動快顯相關可用的程式碼之提示。

IntelliSense 和程式碼編輯器的增強使開發工作更容易,錯誤更少。
但是截至目前為止,在 SQL Server 2005 的 Transact-SQL 編輯器上,卻尚未提供此項功能(雖然像是 MDX、DMX等編輯器有提供),其實在 SQL Server 2005 某個測試版本上,曇花一現,但在正式版本上卻是沒有提供。
目前在筆者測試的 SQL Server 2008() 版本上,Transact-SQL 編輯器也有實作 IntelliSense 喔。

經過測試,在開發程式上,真是十分方便好用,帶來不少便利。
使用的方式,也與使用 Visual Studio 的方式一樣,善用:
  • 列出成員: CTRL+J
  • 自動完成文字: ALT+向右鍵

這樣的使用經驗,可以由 Visual Studio 承傳到 SQL Server Management Studio,真是很棒。 若您與筆者一樣,腦袋就是背不起來指令、參數等的使用者而言,真的是一大福音。 當然,若是遇到超大型資料庫時,或許我們會想停用 IntelliSense,目前這測試版本上,若是要停用 IntelliSense 功能的話,步驟如下: 編輯以下的 registry key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\Tools\Shell\Languages\Language Services\SQL 將 CodeSense 的值,設定為 0,若是要重新啟用,請將 CodeSense 設定為 1 即可;請記得要重新啟動 SQL Server Management Studio。 相信在正式版本上,會與 Visual Studio 一樣,有方便的圖形介面可以使用。 依據測試版本的線上文件說明,目前支援的 Transact-SQL 語法有: (1)SELECT 陳述式,但是尚未支援 INSERT、UPDATE、DELETE,請參考下圖所示: (2)支援 DECLARE、SET、EXECUTE、CREATE TABLE、CREATE PROCEDURE、ALTER PROCEDURE,請參考下圖所示: (3)IntelliSense 支援的陳述式,請參考下圖所示: 例如: 資料庫、結構描述、資料表、檢視表、資料表函數、一般資料表運算式 、資料行、預存程序、參數、區域變數等等。 範例: --EX1.
USE AdventureWorks;
GO
SELECT *
FROM Production.Product
WHERE Color = 'Red';
請照著上面的程式,一行一行在鍵盤上敲打,就可以感受到 IntelliSense 的方便性。 --EX2.
CREATE TABLE tb1
(c1 int,c2 varchar(50))

SELECT * FROM tb1
WHERE C1=1
請照著上面的程式,一行一行在鍵盤上敲打,就可以感受到 IntelliSense 的方便性。 即便是資料表尚未建立,一樣可以感知 IntelliSense 喔。 還有一個方便的功能,也值得特別說明一下,這版本的 Transact-SQL 編輯器提供了:展開、折疊程式碼區塊的功能。這在編寫、閱讀程式碼更是簡潔方便。 下載 Microsoft SQL Server 2008 CTP, November 2007 http://www.microsoft.com/downloads/details.aspx?familyid=3BF4C5CA-B905-4EBC-8901-1D4C1D1DA884&displaylang=en Derrick_德瑞克

2007-11-27

消失的服務 SSNS(SQL Server Notification Services)-- SQL Server 2008


這個 SSNS 服務,具筆者接觸的客戶之非正式統計,在台灣,好像沒有實際應用的案例。

以下這張是 SQL Server 2005 的 SSMS 之畫面:

以下這張是 SQL Server 2008(Katmai) 的 SSMS 之畫面:

那什麼是: SSNS(SQL Server Notification Services)呢?SSNS 是用來開發及部署應用程式以產生和傳送通知的平台。您可以使用 Notification Services 來產生和即時傳送個人化訊息給數千或數百萬位訂閱者,並可將訊息傳送至各式各樣的裝置。

訂閱者建立通知應用程式的訂閱。訂閱是表示對特定類型的事件感興趣。例如,訂閱可以表示下列喜好:「當我的股價達到 $70.00 時通知我」或「當我的小組所撰寫的策略文件更新時通知我」。

通知可在觸發的事件發生時,立即產生並傳送給訂閱者。通知也可以依照訂閱者指定的預訂排程來產生及傳送。

通知可以傳送到各種類型的裝置。例如,通知可傳送到訂閱者的行動電話、個人數位助理 (PDA)、Microsoft Windows Messenger 或電子郵件帳戶。因為訂閱者通常會隨身攜帶這些裝置,所以用通知來傳送重要資訊最為理想。

通知應用程式的優點很多,例如:

  • 通知應用程式可讓您傳送重要資訊給顧客、合作夥伴及員工。
  • 通知可以包含網站的連結,讓收件者取得詳細資訊或確認收到資訊。
  • 通知應用程式提供更自訂化和即時的服務,可增進您和顧客的關係。通知應用程式讓顧客更方便與您開始進行商務交易,協助增加您的收益。
  • 通知應用程式可隨時隨地提供員工所需的資訊,協助提升員工的生產力。
  • 通知應用程式可讓您藉由各種裝置與經常外出的訂閱者保持聯繫。

透過 Notification Services,您可以快速建立和部署應用程式,甚至可以視需要調整應用程式規模以支援更多訂閱者。Notification Services 包括:

  • 簡單卻功能強大的 Notification Services 程式設計架構,可讓您快速建立及部署通知應用程式。您可以使用 XML 或 Notification Services Management Objects (NMO) 來開發應用程式。
  • 可靠、高效能且具擴充性的引擎,可執行通知應用程式。Notification Services 引擎是建立在 Microsoft .NET Framework 和 SQL Server 2005 基礎之上。

為何要使用 Notification Services?

Notification Services 提供程式設計架構,可快速且輕鬆開發專業的通知應用程式,並且提供一個平台在穩固而具延展性的環境中執行這些應用程式。

  • 簡單迅速的應用程式開發環境
  • 效能及延展性

簡單迅速的應用程式開發環境

Notification Services 可讓您定義應用程式屬性,並且使用 Notification Services 程式設計架構選擇性建立自訂的元件,來輕鬆快速地開發和部署通知應用程式。


效能及延展性

因為是「集合導向的處理模型」,所以即使您的應用程式必須支援數千甚至百萬個訂閱者,Notification Services 應用程式還是能執行良好。

下圖顯示 Notification Services 應用程式的基本作業



應用程式產生通知的方式如下:

  1. 訂閱者建立與應用程式相關的訂閱。
  2. 應用程式收集事件。
  3. Notification Services 比對訂閱和事件。
  4. 發生符合訂閱的事件時,Notification Services 便會產生通知。
  5. 然後 Notification Services 會格式化通知並將它傳送到訂閱中指定的裝置。

通知應用程式有個很好的範例,那就是股票應用程式。

訂閱者可建立訂閱,若股價上漲到超過 70 即通知其股票 ADCP,並且以行動電話接收通知。 通知應用程式會從股價行情看板收集股票資料。每次有股價「事件」批次到達時,Notification Services 都會比較當時的事件集合與訂閱條件。

如果股票 ADCP 超過 70,Notification Services 便建立通知,加以格式化,並傳送給傳遞服務,由傳遞服務將訊息轉送到訂閱者的行動電話。

Notification Services 提供一些功能以避免傳送重複的通知。例如,您可以記錄特定的訂閱者已經接收股票 ADCP 的通知。如果下一個 ADCP 的股價仍然超過 70,您的通知邏輯就可以取消給訂閱者的通知。

Notification Services 如何運作?

Notification Services 應用程式會收集事件及訂閱、產生通知,再將通知散發到外部的傳遞服務,如 Simple Mail Transfer Protocol (SMTP) 伺服器。Notification Services 會以如下的方式完成上述工作:






在 SQL Server 2008 版本中,計畫將移除 SSNS,但是會將 SSNS 中關鍵的通知功能整合到 SSRS(SQL Server Reporting Services)中,所以在 SSRS 中會提供像更加的事件驅動訂閱(data driven subsriptions)機制、訂閱者感興趣的資料、以即要傳送資訊到何處等等機制。

Derrick Chen 德瑞克

SQL Server 吉祥物與公仔


參加今年的 TechEd2007 後,個人的感受是:與往年不同,提供更多貼心的服務與創新點子,像是:

  • 午餐結合周邊商圈百貨:包括台北 101、新光三越、誠品信義、紐約紐約,學員可 以自由選擇午餐;另外,用餐時段,大會接駁車將來回會場與週邊商圈,供學員搭乘。
  • Tech.Ed 課程學習:來參加 Tech‧Ed 前,最好先打好基本功,免得入寶山空手而歸。Tech‧Ed 各項課程會將相關議題必備的基本功詳列在旁,以便您事前進行學習與了解,讓 您在 Tech‧Ed 現場學的更多,問的問題更深入。
  • Tech.Ed 嗆舞台:Tech‧Ed Girl 走秀、IT 狂人擂台賽 - Longhorn 大挑戰以及 Tech‧Ed 吉祥物 見面會 ... 多項精采活動將在 Tech‧Ed 舞台上展開,各路英雄快來把獎品搬回家!

...等等。

當然,有各位專家發表演講的課程內容,自然是精彩萬分。

但讓筆者覺得很不錯的貼心服務是:午餐是與周邊商家合作(例如:新光三越、誠品信義、紐約紐約等等),分發禮券,讓您可以任選想吃的美食,不在是大家排排坐,吃桌菜或是便當囉,真的是很讚。

更讓筆者覺得很感興趣的是 ...

有人會猜是 Tech‧Ed Girl ... 哈哈 ... 不是 ...

筆者覺得很讚的是: Tech‧Ed 吉祥物與公仔!




這次一共有 5 支吉祥物與公仔,最愛的當然是: SQL Server 吉祥物,也是唯一的女性的公仔喔。

但可惜筆者沒有收集到全部的公仔,也因為時程的因素,未能與最愛的公仔合照...>_<


Derrick_德瑞克

2007-11-25

SQL Server 2008 CTP 5 英文版安裝 :圖多

請參考最新版本的 SQL Server 2008 RC0 之安裝。

SQL Server 2008 繁體中文版本 RC0 之安裝 Install:圖多
http://sharedderrick.blogspot.com/2008/06/sql-server-2008-rc0-install.html


剛好正在重新安裝 SQL Server 2008 CTP(Katmai) November 2007,順便將安裝畫面抓下來作為備忘之用。









































下載 Microsoft SQL Server 2008 CTP, November 2007
http://www.microsoft.com/downloads/details.aspx?familyid=3BF4C5CA-B905-4EBC-8901-1D4C1D1DA884&displaylang=en