2010年5月31日 星期一

安裝 SQL Server 2008

安裝 SQL Server 2008 不是件難事
因為安裝程式會一步一步的帶您往前走
但是遇到最後的關頭
系統總是跟您說系統出現錯誤
這時就像火車快要進站,但是就是到不了目的地
還很快的倒退嚕!真是惱人

觀察了一下失敗的原因
主要有幾個關鍵
1. 不要同時裝 SQL Server 2005/ SQL Server 2008 (就將 SQL Server 2005 忘了吧)
2. 系統中有一個 "MSXML 6 Service Pack 2 (KB954459)",如果裝了, 請先移除它, 接著再安裝 SQL Server 2008, 應該就可以順利安裝 完成!
3. 上述有時會遇到如何移都一不掉 (MS 的安裝程式真是讓人皺起眉頭, 啥玩意!!)
4. Google 了一下發現原來還有個強力"清除劑"
http://download.microsoft.com/download/e/9/d/e9d80355-7ab4-45b8-80e8-983a48d5e1bd/msicuu2.exe
就可以清掉 MSXML6 Service Pack 2

這時安裝就可以一路到底了
我試過 XP/ Windows 2003 都可以成功的安裝完成 SQL Server 2008

2010年5月24日 星期一

如何查詢欄位中有 '/' 或其他分割符號的資料

首先說明, 本篇功能只適用於 Oracle 9i 以上

先建立以下的 Collection Type

CREATE TYPE tstrings AS TABLE OF VARCHAR2(1000);

再來建立兩個 Function

一個是分割用的的 function (Split), 這是網路找到的(推!)

CREATE OR REPLACE FUNCTION Split

(

PC$Chaine IN VARCHAR2, -- input string

PN$Pos IN PLS_INTEGER, -- token number

PC$Sep IN VARCHAR2 DEFAULT ',' -- separator character

)

RETURN VARCHAR2

IS

LC$Chaine VARCHAR2(32767) := PC$Sep || PC$Chaine ;

LI$I PLS_INTEGER ;

LI$I2 PLS_INTEGER ;

BEGIN

LI$I := INSTR( LC$Chaine, PC$Sep, 1, PN$Pos ) ;

IF LI$I > 0 THEN

LI$I2 := INSTR( LC$Chaine, PC$Sep, 1, PN$Pos + 1) ;

IF LI$I2 = 0 THEN LI$I2 := LENGTH( LC$Chaine ) + 1 ; END IF ;

RETURN( SUBSTR( LC$Chaine, LI$I+1, LI$I2 - LI$I-1 ) ) ;

ELSE

RETURN NULL ;

END IF ;

END;


另一個 function 則是建立將分割的字串轉成 Collection

CREATE OR REPLACE FUNCTION cosites

( v_cosites varchar2, delimiter varchar2 default '/') RETURN TSTRINGS IS

result TStrings := TStrings();

i integer;

str varchar(100);

BEGIN

i := 1;

loop

str := split(v_cosites, i, delimiter);

exit when str is null;

result.extend(1);

result(i) := str;

i := i + 1;

end loop;

return result;

END;

到這邊工具就準備好了,接著試試看結果囉..

select * from Table(cosites('A100/B100/C100'))

結果就會出現

A100

B100

C100




2010年5月21日 星期五

啟動 Outlook 錯誤訊息: 「 無法 」 開啟 Outlook 視窗

這個問題困擾了我一陣子

因為 Thunder Bird 相當好用

本來不太想理他
但是在客戶端非得使用他
不得不處理這個問題
從官方網站找到了線索


1. 請按一下 [ 開始 ] , 按一下 執行 , 型別 regedit然後按一下 [ 確定 ]
2. 找到的下列登錄機碼, 使之適用於版的 Microsoft Windows 指出您正在使用之一:
HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem
刪除 Windows Messaging (子系統) 機碼下 設定檔 機碼 (不要懷疑, 直接將以下的檔案砍掉)
3. 如果要執行這項操作, 再以滑鼠右鍵按一下 設定檔 , 及 [ 刪除 ] 。 按一下 [ 是 ] , 確認刪除動作。

結束