¿Cómo puedo ver directamente manchas en MySQL Workbench
-
30-09-2019 - |
Pregunta
Estoy usando MySQL Workbench 5.2.30 CE CE / Rev 6790. Cuando ejecute la siguiente instrucción:
SELECT OLD_PASSWORD("test")
Solo me dan vuelta en un icono BLOB
agradable, tengo que hacer clic izquierdo para seleccionar la celda, haga clic y seleccione "Open Value en el visor" y seleccione la pestaña "Texto".
El uso de la misma con phpMyAdmin, me sale directamente de nuevo el valor de la llamada OLD_PASSWORD
. Es sólo un ejemplo, pero hay una manera de ver directamente estos resultados en la salida?
Solución
En resumen:
- A Editar > Preferencias
- Selecciona Editor de SQL
- En SQL Ejecución , cheque BINARIO Tratar / VARBINARY como cadena de caracteres no binario
- Reiniciar MySQL Workbench (que no se le pedirá o informado de este requisito).
En MySQL Workbench 6.0 +
- A Editar > Preferencias
- Selecciona Las consultas SQL
- En Resultados de la consulta ??em>, cheque BINARIO Tratar / VARBINARY como cadena de caracteres no binario
- No es obligatoria para reiniciar MySQL Workbench (que no se le pedirá o informado de este requisito). *
Con este ajuste será capaz de concatenar campos sin conseguir manchas.
creo que esto se aplica a las versiones 5.2.22 y posteriores y es el resultado de este MySQL error.
Negación: no sé cuál es la desventaja de esta configuración es - tal vez al momento de seleccionar los valores BINARY
/ VARBINARY
lo verá como texto sin formato que puede ser engañoso y / o tal vez va a dificultar el rendimiento si son grandes suficiente?
Otros consejos
Realizar tres pasos:
-
Vaya a "Preferencias WorkBench" -> Seleccione la opción "Editor de SQL" en "resultados de una consulta": Activa "BINARIO Tratar / VARBINARY como cadena de caracteres no binaria"
-
Reiniciar MySQL Workbench.
-
A continuación, seleccione
SELECT SUBSTRING(BLOB<COLUMN_NAME>,1,2500) FROM <Table_name>;
No estoy seguro de si esto responde a la pregunta, pero si si hace clic en el icono de "burbuja" en el campo (cuando se ve la tabla) hay una opción de "Valor Abrir en editor". Una de las pestañas le permite ver la mancha. Esto está en ver. 2.5.34
fundición obras, pero es un dolor, por lo que recomiendo usar el método de spioter menos que esté utilizando una gran cantidad de datos verdaderamente blob.
SELECT CAST(OLD_PASSWORD("test") AS CHAR)
También se puede convertir como otros tipos, e incluso restringir el tamaño, pero la mayoría de las veces sólo tiene que utilizar CHAR: http://dev.mysql.com/doc/refman /5.5/en/cast-functions.html#function_cast
No parece ser posible, me temo, está catalogado como un error en la mesa de trabajo: http://bugs.mysql.com/bug.php?id=50692 Sería aunque muy útil!
tenía el mismo problema, según la documentación de MySQL , puede seleccionar una subcadena de un BLOB:
SELECT id, SUBSTRING(comment,1,2000) FROM t
HTH, glissi
banco de trabajo 6.3
Seguimiento de puntuación alta respuesta, entonces utilizar UNCOMPRESS()
(En resumen:
1. Vaya a Editar> Preferencias
2. Seleccione el editor de SQL
3. Ejecución Bajo SQL, compruebe Treat BINARIO / VARBINARY como el carácter no binaria cadena
4. Reinicie MySQL Workbench (que no se le pedirá o informado de este requisito).)
Entonces
SELECT SUBSTRING(UNCOMPRESS(<COLUMN_NAME>),1,2500) FROM <Table_name>;
o
SELECT CAST(UNCOMPRESS(<COLUMN_NAME>) AS CHAR) FROM <Table_name>;
Si usted acaba de poner UNCOMPRESS(<COLUMN_NAME>)
puede hacer clic derecho burbuja y haga clic en "Open Value en el Editor".
I reconstruido algunos de los otros puestos juntos, como arreglar 'las preferencias de la mesa de trabajo no funcionó para mí. (WB 6,3)
SELECT CAST(`column` AS CHAR(10000) CHARACTER SET utf8) FROM `table`;
hay algunas cosas que usted puede hacer
SELECT GROUP_CONCAT(CAST(name AS CHAR))
FROM product
WHERE id IN (12345,12346,12347)
Si usted quiere pedir por la consulta se puede ordenar por fundición, así como a continuación
SELECT GROUP_CONCAT(name ORDER BY name))
FROM product
WHERE id IN (12345,12346,12347)
como se dice en este blog
http://www.kdecom.com/mysql-group -concat-burbuja-bug-resuelto /
NOTA: Las respuestas anteriores aquí no son particularmente útiles si el BLOB es una secuencia arbitraria de bytes; p.ej. Binario (16) para almacenar GUID 128 bits o de suma de control md5.
En ese caso, actualmente no hay un editor de preferencia - aunque no tengo presentado una solicitud de función ahora -. ver que la solicitud para una explicación más detallada
[hasta / a menos que la solicitud de función se implementa], la solución es la función HEX
en una consulta: SELECT HEX(mybinarycolumn) FROM mytable
.
Una alternativa es el uso phpMyAdmin en lugar de MySQL Workbench -. Hay hex se muestra por defecto
select CONVERT((column_name) USING utf8) FROM table;
En mi caso, Banco de trabajo no funciona. así que utiliza la solución anterior para mostrar datos BLOB como texto.
* SELECT, CONVERT (UNCOMPRESS (columna) el uso de "utf8") como columna FROM nombre_tabla