2016-12-07 1 views
0

저는 데이터베이스에 저장 될 텍스트 파일을 다루는 프로젝트를 진행하고 있습니다.mysql에서 이진 파일 데이터를 변환 된 char로 검색하는 방법은 무엇입니까?

그래서 blob 데이터 유형을 사용하고 있습니다.이 데이터 유형은 파일을 바이너리로 변환 한 다음 MySQL에 업로드합니다.

내 문제는 그것을 검색하는 동안 전체 바이너리 텍스트를 char로 변환하는 방법입니까? 나는 아래의 PHP 명령을 시도했지만 잘 작동하지 않는 것 같습니다. 도와주세요.

SELECT cast(blob-col_name as char(1000000)) from `table_name` 

The output retrieves garbage text as shown in the image below.

+1

가능한 중복 : //stackoverflow.com/questions/948174/how-do-i-convert-from-blob-to-text-in-mysql) – Nytrix

+0

텍스트 파일 인 경우 TEXT 필드 대신 사용하는 것이 좋습니다. –

+0

@FranzGleichman TEXT-field 옵션은 잘 작동하지만이 옵션을 사용하지 않는 요구 사항의 일부로 데이터베이스에 문서를 업로드해야합니다. – Mariam

답변

0

이 시도 :

SELECT CAST(blob-col_name AS CHAR(1000000) CHARACTER SET utf8) As BLOBText FROM table_name; 

UPDATE

$sql = "SELECT Legislation_ID, Legislation_Name, Category, 
     CAST(data AS CHAR(1000000) CHARACTER SET utf8) As BLOBText FROM legislations"; 
$query = mysqli_query($sql); 

while($rows = mysqli_fetch_array($query)) { 
    file_put_contents($rows["Legislation_Name"].".zip", $rows["BLOBText"]); 
    echo "<textarea style='height:500px;width:300px'>".$rows["BLOBText"]."</textarea><br/>"; 

} 
(HTTP [내가 MySQL의에서 텍스트 BLOB로 변환하려면 어떻게합니까?]의
+0

시도했지만 작동하지 않습니다. 아무것도 가져 오지 않습니다. – Mariam

+0

어떻게 데이터를 수집합니까? PHP에서 사용하고있는 코드는 무엇입니까? –

+0

$ sql = "SELECT 'Legislation_ID','Legislation_Name', 'Category', CAST ('data' AS CHAR (1000000) CHARACTER SET utf8) BLOBText FROM'legislations'"; – Mariam