2010年10月31日 星期日

550 5.7.1 Unable to relay(第二種情況)

最近收到一封NDR(投遞不成功的報告),信件內容裡[系統管理員的診斷資訊]如下

#< #5.7.1 smtp;550 5.7.1 Unable to relay> #SMTP#
這錯誤好熟悉啊,之前我有遇過,我的這篇550 5.7.1 unable to relay有說明,不過這次寄信的程式是利用本機SMTP服務來寄信的,而且已正常運行很久了,突然出現這錯誤我感到很訝異,難道設定不小心被人動到了嗎?仔細研究後發現,這錯誤跟之前遇到的狀況不一樣,特此紀錄

2010年9月19日 星期日

IE重整(F5)的問題(用JavaScript重整)?

我想這應該是個蠢問題,但也讓我試了老半天呢!
因為要上台報告,要示範一個網頁例子給同事看,想想在沒網路的情況下,只能示範HTML囉,HTML的好處就是只要有IE就可以打開的嘛,於是寫了一個簡單的HTML,上面就一個表單,有幾個欄位與按鈕,預先在欄位裡輸入好字串,到時示範就不用打,想說到時若需輸入其他文字,就算輸入錯誤,按重整(F5)後那些欄位文字應該就會還原吧,結果實際上並非我想的那樣,按F5或Ctrl+F5結果都一樣,並沒有重新載入喔,比如說,簡化的HTML內容如下,各位可以存成.html的試試
<HTML><BODY>
<input type=text name=St size=25 value="XXX">
</BODY></HTML>
用IE打開的網頁應該長的像下面這樣吧

2010年8月27日 星期五

signer information does not match signer information of other classes in the same package

原環境為Websphere 6.0.0.1 + SQL 2000,後來資料庫升級到SQL 2005,得調整WAS的相關設定,調整的當中陸續遭遇一些錯誤,相關調整步驟就不在這邊說明囉
一開始我更換JDBC Driver 1.2後,log出現如下錯誤
class "com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement"'s signer information does not match signer information of other classes in the same package

2010年8月23日 星期一

ALTER SCHEMA出現物件已存在的錯誤

ALTER SCHEMA new_schema_name TRANSFER old_schema_name.ObjectName

訊息 15530,層級 16,狀態 1,行 1

名稱為 "ObjectName" 的 物件 已經存在。

2010年8月20日 星期五

整數除以整數結果竟然只保留整數,那小數呢?

最近剛好遇到前端程式與後端資料庫計算後差一塊的問題,應是資料庫端四捨五入的地方怪怪,仔細一看T-SQL語法,整數除整數,比如說51/100,不是0.51嗎?那我用ROUND(51/100,0),應該會進位後得到1吧,結果居然是0,讓我傻眼了一下,那我直接在SSMS中,實際先下了select 51/100看看,結果真的是0,有圖有真相

2010年7月7日 星期三

如何散佈DTS元件(DTSRUN)

剛好同事需要在沒有安裝SQL Server上的伺服器上執行遠端DTS,要用DTSRUN,我把DTSRUN拷貝過去後發現無法使用,看來缺少一些檔案,上網查了一下,參考到Redistributing DTS with your program這篇,發覺檔案還不少,還得註冊dll,挺麻煩的,於是寫了簡單的SCRIPT與說明,有需要者自行更改部份內容,基本上如果用預設安裝SQL Server的,相關路徑應該就不用改

Step 1 將以下script存成batch檔後,在安裝有SQL 2000的來源端執行會產生C:\DTSuti\目錄

2010年7月3日 星期六

在SSMS刪除舊版DTS版本的方法

過去在SQL 2000用EM可以在DTS上按右鍵選版本,可以很容易的把舊版本的封裝刪除,保留太多版本可是會佔空間的,可是到了SQL 2005,SSMS好像沒有選項可以這麼作,刪除是直接把整各封裝給刪掉呢,而且若版本超過一個,開啟時還要選版本有點麻煩,過去在EM可是直接開最新的說,所以會想說如何把舊的版本刪掉呢?想到最簡單的方法就去MSDB內把舊版本刪掉就好啦,寫了一個簡單的Script,會印出該封裝名稱與對應刪除的指令,執行那個指令後會保留最新的版本喔