2008年8月17日 星期日

reason 3028

FTP時發生錯誤訊息,並只傳部分資料:
Unable to convert data from CCSID 937 to CCSID 950: reason 3028.

有DBCS(雙位元組字元集)字元時因0E/0F不成對,傳到該筆資料就會因無法轉換而終止。

2008年8月14日 星期四

字串連接

MySQL/Oracle例:
SELECT CONCAT(last_name,first_name) FROM person

Oracle/DB2例:
SELECT last_name ││first_name FROM person

SQL Server例:
SELECT last_name + first_name FROM person

字串替換

語法:
Replace([欄位] , '替換前字串' , '替換後字串')
Update [資料表] Set [欄位] = Replace([欄位] , '替換前字串' , '替換後字串') Where [條件式]

例:
將字串欄位中含有'abcd'替換成'1234'
UPDATE testtable SET field1 = REPLACE(field1,'abcd','1234')

2008年8月12日 星期二

replace() 遇到NULL時發生錯誤

replace 遇到 Null 值時會發生錯誤,錯誤訊息:Null 的使用不正確: 'replace'


原程式碼:
out = out & replace(asrs.Fields(i).Value,","," ") & ","


改為:
If Not IsNull(as400rs.Fields(i).Value) Then
out = out & replace(asrs.Fields(i).Value,","," ") & ","
Else
out = out & " " & ","
End If