2012-11-29 14 views
25

Ciągle znajduję, że MySQL Workbench wyświetla wyniki zapytania jako BLOB. np: SELECT INET_NTOA(167773449) ->BLOBMySQL Workbench pokazuje wyniki jako BLOB

Jeśli wybiorę się do „wartości widzenia” można ustalić wartość tekst '10 .0.5.9' , ale jest to dość irytujące, kiedy wybrać wiele wierszy i chce rzut oka na zawartość.

Czy istnieje sposób obejścia tego problemu, czy jest to ograniczenie narzędzia?

Odpowiedz

46

Tło: Ten problem występuje, gdy binarne ciągi znaków (BINARY/typ VARBINARY) są zwracane w wynikach. Łańcuchy binarne zawierają zero bajtów iz jakiegoś powodu, najwyraźniej zabezpieczenia, nie zostały domyślnie pokazane. Więcej szczegółów o ciągach binarnych here.

Nawet w zgłoszonym przykładzie SELECT INET_NTOA(167773449) funkcja zwraca ciąg binarny. Sprawdź numer this w celach informacyjnych.

Rozwiązanie: Ponieważ MySQL Workbench v5.2.22, można ustawić poprzez preferencje czy aby pokazać lub ukryć te wartości.

  1. w MySQL Workbench, przejdź do: "Edycja -> Preferencje ... ->SQL Zapytania" LUB "Edycja -> Preferencje ... ->SQL Editor" (zależnie na jakiej wersji Workbench masz).
  2. Zaznacz opcję "Traktuj BINARY/VARBINARY jako niekrytyczny ciąg znaków", aby wyświetlić aktualną wartość.

referencyjny: Oryginalny problem został zgłoszony i odpowiedział fix here.

+2

W Workbench 6.2, ustawienie jest pod 'Edycja -> Preferencje -> SQL Editor -> SQL Execution' –

+0

Gdzieś w 6,2 strzelnica istnieje regresja: to już nie działa. –

4

Co można zrobić, to rzucić typ BLOB na ciąg znaków. Pozwoli ci to po prostu spojrzeć na to, co znajduje się w twoim typie BLOB podczas przeglądania instrukcji select.

SELECT CAST('blob_column' AS CHAR(10000) CHARACTER SET utf8) FROM 'DB_table'; 
+2

Doskonałe obejście problemu błędu środowiska roboczego! – TrogDor

Powiązane problemy