2013-02-14 143 views
3

我的數據庫表中有一個字段,其數據類型爲BLOB。如何使用SQL中的SELECT查詢將內容視爲text/string。內容的MIMETYPE'text/xml charset=UTF8'將BLOB轉換爲sql中的文本

我這個嘗試,我不知道如果即時通訊正確的語法

SELECT 
CAST((SELECT column FROM myTable WHERE ID='56')AS CHAR(10000) CHARACTER SET utf8) 

千恩萬謝

回答

15

嘗試:

SELECT CONVERT(object USING utf8) 
FROM tablename 
+0

我該怎麼給代替對象的? – shockwave 2013-02-14 09:25:40

+1

應該只是包含您的博客的列。 :) – urbanspr1nter 2013-02-14 16:26:23

+0

@ urbanspr1nter謝謝你的回答。它幫助我很多。 – ABorty 2013-09-12 15:03:58

3

嘗試此查詢 -

SELECT CONVERT(column USING utf8) FROM myTable WHERE ID=56 
+0

我試過這個,但是,我收到一個錯誤,說右括號丟失。語法是正確的。什麼是小錯誤? – shockwave 2013-02-14 09:25:25

+0

是的,語法是正確的,查詢查詢應該工作。嘗試在另一個MySQL客戶端運行此命令,例如在命令行客戶端。 – Devart 2013-02-14 10:05:27

-1

設置你的內容類型,在PHP中:

header("Content-type: image/jpg"); //Send the content Type here. 
print $data['blob_data']; 
+0

我沒有使用PHP!有什麼我可以做的關於這個在java/sql中。請幫忙! – shockwave 2013-02-14 09:27:51

1

我有同樣的問題 - 我只是在phpMyAdmin改變字段類型!而我看到:

ALTER TABLE pages CHANGE contentcontent TEXT NULL DEFAULT NULL
( '內容' - 我的領域這是BLOB類型)

0
CREATE OR REPLACE FUNCTION HASTANE.getXXXXX(p_rowid in rowid) RETURN VARCHAR2 
AS 
    l_data long; 
BEGIN 
    SELECT XXXXXX INTO l_data FROM XXXXX WHERE rowid = p_rowid; 
    RETURN substr(l_data, 1, 4000); 
END getXXXXXX;