2009-10-27 68 views
1

我有一個mysql數據庫,內容爲blob,無論出於何種原因,這些開發人員選擇使用blob是我的控制。是否可以將數據轉換爲文本並將數據類型轉換爲文本?MySQL Blob到文本(數據和數據類型)

+2

http://stackoverflow.com/questions/948174/how-do-i-convert-from-blob-to-text-in-mysql – 2009-10-27 02:23:03

回答

3

您是否嘗試了alter table命令?

alter table mytable change mycolumn mycolumn text; 

from http://forums.mysql.com/read.php?103,164923,167648#msg-167648它看起來像你可以使用CAST。

你可以創建一個新的(文本)柱,然後用update命令填充它在:

update mytable set myNewColumn = CAST(myOldColumn AS CHAR(10000) CHARACTER SET utf8) 
+0

我'已經從文本轉到blob,並且沒有數據變化。 – 2009-10-27 02:31:29

1

從BLOB轉換領域的文本截斷所有字符> 127在我的情況下,我們有很多的歐洲人物,所以這不是一個選擇。下面是我所做的:

  1. 創建臨時字段作爲文本
  2. 複製BLOB字段到臨時場:UPDATE TBL SET col_temp = CONVERT(COL使用latin1,);在這種情況下,我的斑點舉行LATIN1編碼字符
  3. 轉換實際現場爲文本數據類型
  4. 臨時複製到實際現場
  5. 刪除temp欄

不完全是簡單,但它的工作,並不會丟失數據。我正在使用版本:'5.1.50 - 社區'