已經可以順利使用ODBC連線到Azure的SQL server囉!剩下就把我們眾多資料匯入吧!
(此篇會參考:【Day9】Azure資料庫#1:功能介紹與建立資料庫)
我們昨天有試著把在Stock
中欄位印出來,但是StockName
出來的卻是???
,裡面的台積電
一個字都沒出現,到底怎麼回事呢?
看到資料庫顯示為???
沒有正常顯示,這時猜想,應該就是編碼問題。
檢查我們的StockName
,格式為VARCHAR(50)
,看起來正常,怎麼會錯?
突然想到,在MySQL中VARCHAR
可以表示UTF
格式,但是SQL Server卻不行,必須轉成NVARCHAR
才能儲存UTF-8
。所以我們需要轉換StockName
的格式:
ALTER TABLE Stock
ALTER COLUMN StockName NVARCHAR(50);
修改資料後,怎麼還是一樣???
,原來是資料庫的編碼不同,只好修改編碼:
ALTER DATABASE finance COLLATE Chinese_Taiwan_Stroke_CS_AS;
結果發現有錯誤:
The database could not be exclusively locked to perform the operation.
ALTER DATABASE failed. The default collation of database 'finance' cannot be set to Chinese_Taiwan_Stroke_CS_AS.
看了文件才知道,這一開始必須設定好,之後無法改了,只好重新建立我們的Database了!
參考這篇【Day9】Azure資料庫#1:功能介紹與建立資料庫,然後在編碼的時候修改成
Chinese_Taiwan_Stroke_CS_AS;
建立完畢,就重新輸入我們的2330台積電,看看是不是可以顯示,看來顯示沒有問題,表示我們完成囉!
這篇稍微短一點,因為後面進入資料庫的部分,尚未研究完畢,因此部分交給明天的文章完成。
請期待明日!