調錯也是一種態度,也是一種態度
今天在調試Excel報表顯示的時候,出現一個不大不小的錯誤,大是因為剛開始不知道它是什嗎?小是因為和它糾纏了半天才恍然大悟。那麼接下來就讓我們記錄一下這個探索的軌跡。
一、錯誤體
在瀏覽器的右下角有一個黃色預警,然後介面就是出不來。點開顯示的錯誤為:
網頁錯誤詳細資料
使用者代理程式: Mozilla/4.0 (compatible; MSIE7.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.3; .NET4.0C;.NET4.0E)
時間戳記: Mon, 1 Dec 2014 09:33:45 UTC
錯誤的解析:
1.應用程式版本“Mozilla/4.0”表示:你使用Maxthon 2.0 瀏覽器使用 IE8 核心;
2. 版本標識“MSIE7.0”
3. 平台自身的識別資訊“Windows NT6.1”表示“作業系統為 Windows7”
4.Trident核心版本“Trident/4.0”,瀏覽器的一種核心,還有一種就是WebKit核心
二、探索軌跡 方案一:
剛開始沒有多想,就將錯誤體粘到了百度上,出來的大部分解決方案總結下來有兩種:
(一)在註冊表中註冊瀏覽器的版本核心
第一、開啟電腦,選擇電腦螢幕左下角“開始”—>“運行”。
第二、輸入regsvr32 jscript.dll後選擇“確定”
第三、再次輸入regsvr32 vbscript.dll 選擇“確定”
第四、以上兩次輸入都會有註冊成功提示。說明您已成功修複您的IE組件。再清空IE後開啟網頁即可。
最後點擊IE瀏覽頁的工具--Internet選項,刪除cookies再點刪除檔案,記得勾選所有離線檔案,就可以了。
(二)升級瀏覽器
如果以上方法不行,就升級瀏覽器,重啟電腦。
比較悲催的是兩種方法都試過了,但結果還是不行,但是比之前好的是沒有黃色預警了,只是不顯示資料。看著瀏覽器真是一種撓心,心想這也是一種態度啊!
接下來只能想別的辦法啦,這個訊息表示資料已經從底層傳過來了,只是不能正常顯示而已。是不是查出來的資料有問題,於是就在底層加了幾個斷點一點點跟蹤,實質問題終於浮出水面,帶著這個問題尋找第二個解決方案。如下:
Cannot resolve the collationconflict between "Chinese_PRC_CI_AS" and"SQL_Latin1_General_CP1_CI_AS" in the equal to operation.
方案二:
這個錯誤是在Sql左串連或是寫預存程序的時候發生的“字元集錯誤”,出現這個錯誤的原因是:由於每個表都有自己的定序,當你將它們串連到一塊的時候就會出現定序衝突,這個時候就需要將它們統一規則。如下:
加入database_default就可以了。
LEFT JOIN @table1 cpt on o.Part = cpt.ProductId COLLATEdatabase_default select a1,a2 COLLATEdatabase_default from Call_id union all select a1,a2 COLLATEdatabase_default from Call_Detail
三、總結
在這個錯誤中讓我認識到自己的極大盲區:
第一:遇到問題有點不淡定,有點暴躁,所以在今後的工作中要有一種態度,遇事不急不躁,尋找解決問題的辦法。
第二:在解決問題的時候要根據問題出現的原因,再尋找解決的方法,不要立刻從網上查,這樣也許會讓你事倍功半,所以要學會對症下藥,而不是亂醫。