Slick theme的作者又有新的作品出爐了!
http://go.mobihand.com/?op=dlm&pd=28624&l=1&ps=150&ext=jad
使用storm的風格,桌布是皮格感覺的rim logo,按鈕跟文字顯示上都很讚哦!
另外有一款相同風格的today theme也提供下載。
http://go.mobihand.com/?op=dlm&pd=28623&l=1&ps=150&ext=jad
發送自我的BlackBerry®智慧型手機。
2009/04/30
2009/04/03
Trigger Error Handling For ASP
最近遇到一個情況,在A資料表內有不同的trigger,其中有個trigger 1的作法是在update數量時要去同時update另一個B資料表的數量,
而這個A資料表的另一個trigger 2也會被執行,如果這時trigger 1內的另一個C資料內的Constraint裡觸發時,ASP的ADO會誤以為Trigger 2執行成功,
而不會返回錯誤,以致於程式裡無法作error handling
此時的解法就只能去調整trigger的執行順序,讓有Constraint的Trigger能先被執行,這樣才能抓到錯誤。
以下是範例示範:
當我執行以下程式時,觸發MyStock的Constraint :
結果:
(1 個資料列受到影響)
訊息 547,層級 16,狀態 0,程序 TRI_UpdateDetails,行 29
UPDATE 陳述式與 CHECK 條件約束 "CK_MyProduct_Qty_Selling" 衝突。衝突發生在資料庫 "JesseWangDB",資料表 "dbo.MyProduct"。
陳述式已經結束。
因為TRI_InsertLog先被執行到了,所以ASP的ADO誤以為執行結果無誤。
所以我們要調整Trigger順序
調整後的結果:
訊息 547,層級 16,狀態 0,程序 TRI_UpdateDetails,行 29
UPDATE 陳述式與 CHECK 條件約束 "CK_MyProduct_Qty_Selling" 衝突。衝突發生在資料庫 "JesseWangDB",資料表 "dbo.MyProduct"。
陳述式已經結束。
這樣ASP的ADO就可以抓到error了。
而這個A資料表的另一個trigger 2也會被執行,如果這時trigger 1內的另一個C資料內的Constraint裡觸發時,ASP的ADO會誤以為Trigger 2執行成功,
而不會返回錯誤,以致於程式裡無法作error handling
此時的解法就只能去調整trigger的執行順序,讓有Constraint的Trigger能先被執行,這樣才能抓到錯誤。
以下是範例示範:
-- 1. Constraint : CK_MyProduct_Qty_Selling
ALTER TABLE [dbo].[MyProduct] WITH NOCHECK ADD CONSTRAINT [CK_MyProduct_Qty_Selling]
CHECK (([MyProductQty]-[MyProductQtySelling])>=(0) AND [MyProductQty]>(0))
GO
ALTER TABLE [dbo].[MyProduct] CHECK CONSTRAINT [CK_MyProduct_Qty_Selling]
-- 2. Trigger : InsertLog
CREATE TRIGGER [dbo].[TRI_InsertLog]
ON [dbo].[JesseWangDB]
FOR UPDATE
AS
BEGIN
IF UPDATE (Product_Qty)
BEGIN
INSERT MyLog .....
END
END
GO
-- 3. Trigger : UpdateDetails
CREATE TRIGGER [dbo].[TRI_UpdateDetails]
ON [dbo].[JesseWangDB]
FOR UPDATE
AS
DECLARE @OldProductId int
BEGIN
IF UPDATE (Product_QtySelling)
BEGIN
SELECT @OldProductId=ProductId FROM deleted
UPDATE MyStock
SET MyStockQty = MyStockQty + 1
WHERE MyStockProductId = @OldProductId
END
END
GO
當我執行以下程式時,觸發MyStock的Constraint :
UPDATE MyProduct SET MyProductQtySelling = MyProductQtySelling + 1 WHERE MyProductId = 38382
結果:
(1 個資料列受到影響)
訊息 547,層級 16,狀態 0,程序 TRI_UpdateDetails,行 29
UPDATE 陳述式與 CHECK 條件約束 "CK_MyProduct_Qty_Selling" 衝突。衝突發生在資料庫 "JesseWangDB",資料表 "dbo.MyProduct"。
陳述式已經結束。
因為TRI_InsertLog先被執行到了,所以ASP的ADO誤以為執行結果無誤。
所以我們要調整Trigger順序
EXEC sp_settriggerorder @triggername=N'[dbo].[TRI_UpdateDetails]', @order=N'First', @stmttype=N'UPDATE'
調整後的結果:
訊息 547,層級 16,狀態 0,程序 TRI_UpdateDetails,行 29
UPDATE 陳述式與 CHECK 條件約束 "CK_MyProduct_Qty_Selling" 衝突。衝突發生在資料庫 "JesseWangDB",資料表 "dbo.MyProduct"。
陳述式已經結束。
這樣ASP的ADO就可以抓到error了。
2009/02/19
Oanda FXConverter for BlackBerry - 即時匯率換算軟體
這麼好用的軟體居然沒人發現...LOL
雖然WORLDMATE LIVE可以設三個匯率換算,但是Gold的會員要錢,有時連網路又慢...
OANDA FXConverter完全沒有這個困擾,即時的換算164個貨幣,連線速度快而且免費!
操作很簡單,主畫面就可設定二個匯率的換算...看到台幣直直落實在是...
下方還有秒數告知你是多久前更新的匯率,酷!
Link:http://m.fxconverter.com/
發送自我的BlackBerry®智慧型手機。
雖然WORLDMATE LIVE可以設三個匯率換算,但是Gold的會員要錢,有時連網路又慢...
OANDA FXConverter完全沒有這個困擾,即時的換算164個貨幣,連線速度快而且免費!
操作很簡單,主畫面就可設定二個匯率的換算...看到台幣直直落實在是...
下方還有秒數告知你是多久前更新的匯率,酷!
Link:http://m.fxconverter.com/
發送自我的BlackBerry®智慧型手機。
2009/02/18
IE 8 新功能 : Web Slice 、Accelerators (加速器) 、Search Provider (搜尋提供者)
Accelerators 跟 Search Provider 都只要準備好xml檔即可
可參考:邊做邊學Internet Explorer 8:為你的網站穿上新衣 - Internet Explorer 8 新功能
講一下web slice
1.在某個div加入hslice即可
2.有幾個必要的class要加
hslice, feedurl 或 entry-content, entry-title
3.feedurl及entry-content
entry-content --> display內的連結,必需使用 target="_blank" 另開視窗顯示,不然跳頁的頁面會在ie8裡的web slice小視窗中顯示
feedurl --> 連結不必特別處理,會在目前視窗中顯示,但必須使用xml格式
使用feedurl:
myfeed.aspx:
其他參考資料:
可參考:邊做邊學Internet Explorer 8:為你的網站穿上新衣 - Internet Explorer 8 新功能
講一下web slice
1.在某個div加入hslice即可
<div id="ws" class="hslice ProductName">
2.有幾個必要的class要加
hslice, feedurl 或 entry-content, entry-title
<div id="ws" class="hslice ProductContent">
<a rel="entry-content" href="display.aspx?pid=11122211" style="display:none;">
<div class="entry-title ProductTitle">
blackberry bold 9000 on sale!
</div>
</div>
3.feedurl及entry-content
entry-content --> display內的連結,必需使用 target="_blank" 另開視窗顯示,不然跳頁的頁面會在ie8裡的web slice小視窗中顯示
feedurl --> 連結不必特別處理,會在目前視窗中顯示,但必須使用xml格式
使用feedurl:
<div id="ws" class="hslice ProductContent">
<a rel="feedurl" href="myfeed.ashx?pid=11122211" style="display:none;"></a>
<div class="entry-title ProductTitle">
blackberry bold 9000 on sale!
</div>
</div>
myfeed.aspx:
<?xml version="1.0" encoding="big5"?>
<rss version="2.0" xmlns:mon="http://www.microsoft.com/schemas/rss/monitoring/2007">
<channel>
<title>my web slice feed</title>
<link>http://192.168.51.64</link>
<description>my web slice</description>
<pubDate>2009/2/18 下午 02:46:14</pubDate>
<ttl>1440</ttl>
<item>
<title>BlackBerry Bold 9000</title>
<link>http://192.168.51.64/product.aspx?pid=1112233</link>
<description><![CDATA[
<div>
<div><img src="http://192.168.51.64/myproduct.jpg"></div>
<div>product name : BlackBerry Bold 9000 on sale!</div>
<div>price : $17500</div>
<div><a href="http://192.168.51.64/pay/buynow.aspx">Buy Now!</a></div>
</div>
]]></description>
</item>
</channel>
</rss>
其他參考資料:
2009/01/22
ASP - 小心ASP在Dictionary裡的用法....
這是asp,不是asp.net哦!
比如說我有個dictionary
...
如果要判斷dicProduct某個key是否存在,請使用:
請不要用
因為不但會無法判斷,還會自動的把你的dicProduct裡長出一個key叫product_createddate, 會給後面的程式碼帶來災難!
遇到後,只有一句話來形容asp, 那就是「吃飽太閒了」
比如說我有個dictionary
dim dicProduct
set dicProduct = server.CreateObject ("scripting.dictionary")
...
如果要判斷dicProduct某個key是否存在,請使用:
if dicProduct.exists("product_createddate") then
...
end if
請不要用
if dicProduct("product_createddate") = "" then
...
end if
因為不但會無法判斷,還會自動的把你的dicProduct裡長出一個key叫product_createddate, 會給後面的程式碼帶來災難!
遇到後,只有一句話來形容asp, 那就是「吃飽太閒了」
使用 VRTA 加快網頁速度的 12 個步驟
這是我同事Luke在週會上分享的主題,對於前端工程師來說相當的有幫助,有時候會覺得該作都都作的差不多了,但為何網頁還是會慢呢?
分析後就能很快的找到問題所在,對症下藥改善缺失。
也提供了幾個soultion,像css小圖合併,減少零零散散的小圖loading...等等。
分享幾個連結:
使用 Visual Round Trip Analyzer 加快網頁速度的 12 個步驟
http://msdn.microsoft.com/zh-tw/magazine/dd188562.aspx#id0100011
CSS整形與最佳化工具
http://www.isparkle.cn/show/csstidy/?lang=zh
CSS 圖片合併產生器
http://spritegen.website-performance.org/
分析後就能很快的找到問題所在,對症下藥改善缺失。
也提供了幾個soultion,像css小圖合併,減少零零散散的小圖loading...等等。
分享幾個連結:
使用 Visual Round Trip Analyzer 加快網頁速度的 12 個步驟
http://msdn.microsoft.com/zh-tw/magazine/dd188562.aspx#id0100011
CSS整形與最佳化工具
http://www.isparkle.cn/show/csstidy/?lang=zh
CSS 圖片合併產生器
http://spritegen.website-performance.org/
訂閱:
文章 (Atom)
-
一個糖果有一個糖果紙 一個糖果1元 現在商店在作促銷 3個糖果紙可以換1個糖果 請問 15元最多可以吃幾個糖果?
-
簡單整理一下今天看到的這篇文章, 未來可以用指標來改善團隊狀況。 ----- 軟體工程的重要的指標 DORA 指標 (DevOps Research Assessment) 1. 部署頻率: 產品多快發佈出去 2. 投入到交貨的時間 (Lead-Time For Ch...
-
內容取自 Producthunt =============================== "What's a tool that changed your life?" - us to freelancers on Twitt...