最近了解了一下mysql存儲過程,之前版本的mysql不支持存儲過程,5.0版本后就可以支持存儲過程的使用;恰好筆者下載使用版本為5.6.20:
做了一個給表插入數據的簡單存儲過程,發現打開表后漢字全部顯示為?號。如下:
於是上網查資料,忙了兩小時才搞定!好了,現在簡單敘述一下。
筆者遇見的問題是由兩種原因引起的;
第一:使用Navicat數據庫客戶端建立表設置問題導致的,如下:
將上邊操作完成后,可以在表里插入漢字,沒有?號或者亂碼現象了,本以為問題解決了,但使用存儲過程時依然插入的是?號;然后筆者就認為是存儲過程出問題啦,果然,經查閱資料發現,mysql存儲過程插入參數涉及中文的要將varchar類型修改為nvarchar,代碼如下:
好了,打完收工!結果如下:
以上方法是筆者找到的兩種問題,並將之處理的方案,如讀者有其他更好的解決方案,也可以提出來,相互進步;當然類似的問題可能由於其他原因導致,在這里就不過多敘述了!