ProgramingTip

MySQL Workbench에서 Blob을 직접 보는 방법

bestdevel 2020. 11. 29. 12:03
반응형

MySQL Workbench에서 Blob을 직접 보는 방법


MySQL Workbench CE 5.2.30 CE / Rev 6790을 사용하고 있습니다. 다음 문을 때 때 :

SELECT OLD_PASSWORD("test")

멋진 BLOB아이콘 만 표시 됩니다. 다음 "뷰어에서 값"을 선택하고 "텍스트"탭을 선택하고 마우스 오른쪽 버튼을 클릭합니다.

phpMyAdmin과 동일하게 사용하여 OLD_PASSWORD호출 값을 직접 얻습니다 . 단지 예일 뿐이지 만 출력에서 ​​결과를 직접 볼 수있는 방법이 있습니까?


요컨대 :

  1. 편집 > 기본 설정 으로 이동합니다.
  2. SQL 편집기 선택
  3. 아래 SQL 실행 , 확인 이진이 아닌 호스트로 처리 BINARY / VARBINARY를
  4. MySQL Workbench를 다시 시작합니다 (이 요구 사항에 대한 메시지 나 알림이 표시되지 않음).

MySQL Workbench 6.0 이상

  1. 편집 > 기본 설정 으로 이동합니다.
  2. SQL 쿼리 선택
  3. 아래 쿼리 결과 확인 이진이 아닌 아닌로 처리 BINARY / VARBINARY를
  4. MySQL Workbench를 반드시 다시 시작해야하는 것은 아닙니다 (이 요구 사항에 대한 메시지 나 알림이 표시되지 않음). *

이 설정을 사용하면 Blob을 가져오고 오지 않고 필드를 사용할 수 있습니다.

이 버전 5.2.22 이상에 적용되며 MySQL 버그 의 결과라고 생각합니다 .

면책 조항 :이 설정의 단점이 무엇인지 모르겠습니다. BINARY/ VARBINARY값을 선택할 때 오해의 소지가있는 일반 텍스트로 표시되거나 충분히 크면 성능이 될 수 있습니다.


세 단계를 수행하십시오.

  1. "WorkBench 기본 설정"으로 이동-> "쿼리 결과"에서 "SQL 편집기"를 선택 : "이진이 아닌 아닌로 BINARY / VARBINARY 처리"를 선택합니다.

  2. MySQL WorkBench를 다시 시작합니다.

  3. 이제 선택 SELECT SUBSTRING(BLOB<COLUMN_NAME>,1,2500) FROM <Table_name>;


이 질문에 대한 답은 확실하지 않지만 필드에서 "blob"아이콘을 마우스 오른쪽 버튼으로 클릭하면 (테이블을 볼 때) "Edit Value in Editor"옵션이 있습니다. 탭 중 하나를 사용하여 Blob을 볼 수 있습니다. 이 ver입니다. 5.2.34


작동하지만 고통스럽기 때문에 진정한 blob 데이터를 많이 사용하지 않는 한 캐스팅 spioter의 방법을 사용하는 것이 좋습니다.

SELECT CAST(OLD_PASSWORD("test") AS CHAR)

유형으로 캐스트하고 크기를 제한 할 경우 대부분의 경우 CHAR를 사용합니다. http://dev.mysql.com/doc/refman/5.5/en/cast-functions.html#function_cast


가능하지 않을 것입니다. 워크 벤치에 버그로 설치되어 있습니다 . http://bugs.mysql.com/bug.php?id=50692 그래도 매우 유용 할 것입니다!


동일한 문제가 발생했습니다 . MySQL 문서 에 따르면 BLOB의 하위 선호를 선택할 수 있습니다.

SELECT id, SUBSTRING(comment,1,2000) FROM t

HTH, 글리시


작업대 6.3
높은 점수를받은 후 사용UNCOMPRESS()

(요약 :
1. 편집> 기본 설정으로 이동합니다
. 2. SQL 편집기를 선택합니다.
3. SQL 실행에서 BINARY / VARBINARY를 이진이 아닌 호스트로 처리를 선택합니다
. 4. MySQL Workbench를 다시 시작합니다 (이 요구 사항 에, 대한 메시지 사항 나 알림 이-display되지 않음).)

그때

SELECT SUBSTRING(UNCOMPRESS(<COLUMN_NAME>),1,2500) FROM <Table_name>;

또는

SELECT CAST(UNCOMPRESS(<COLUMN_NAME>) AS CHAR) FROM <Table_name>;

그냥 넣으면 UNCOMPRESS(<COLUMN_NAME>)방울을 마우스 오른쪽 단추로 클릭하고 "편집기에서 값 열기"를 클릭합니다.


Workbench 'preferences'수정이 저에게 효과가 없었기 때문에 다른 게시물 몇 개를 함께 모았습니다. (WB 6.3)

SELECT CAST(`column` AS CHAR(10000) CHARACTER SET utf8) FROM `table`;

할 수있는 일이 거의 없습니다

SELECT GROUP_CONCAT(CAST(name AS CHAR))
FROM product
WHERE  id   IN (12345,12346,12347)

질의로 주문할 수 있고 같이 캐스트로 주문할 수 있습니다.

SELECT GROUP_CONCAT(name ORDER BY name))
FROM product
WHERE id   IN (12345,12346,12347)

이 블로그에 나와 명세서

http://www.kdecom.com/mysql-group-concat-blob-bug-solved/


참고 : 여기에있는 이전 답변은 BLOB가 임의의 바이트 시퀀스 인 경우 특히 유용하지. 예 : 128 비트 GUID 또는 md5 체크섬을 저장하는 BINARY (16).

이 경우 현재 편집자 기본 설정이 없습니다. 기능 현관 요청 고객 지금제출 했지만 자세한 설명은 해당 요청 고객을 참조하십시오.

[기능 요청이 구현 될 때까지 /하지 않는 한] 솔루션은 HEX쿼리의 함수입니다 SELECT HEX(mybinarycolumn) FROM mytable..


대안은 MySQL Workbench 대신 phpMyAdmin 을 사용하는 것입니다. 기본적으로 16 진수가 표시됩니다.


select CONVERT((column_name) USING utf8) FROM table;

제 경우에는 Workbench가 작동하지 않습니다. 그래서 위의 솔루션을 사용하여 blob 데이터를 텍스트로 표시했습니다.


SELECT *, CONVERT (UNCOMPRESS (column) USING "utf8") AS column FROM table_name

참고 URL : https://stackoverflow.com/questions/4343945/how-can-i-directly-view-blobs-in-mysql-workbench

반응형