Los datos de la tabla de edición de MySQL Workbench son de solo lectura


Al intentar Editar datos de tabla en MySQL Workbench 5.2.37, está en modo de solo lectura.

Solo es editable si la tabla tiene una clave primaria.

¿Hay alguna solución para tratar con la tabla sin clave primaria??

Gracias

Como una de las sugerencias intenté actualizar WB 5.2.40. Pero todavía existe este problema.. Podría alguien ayudar, por favor..

Author: EscalinNancy, 2012-05-30

11 answers

Asumo que la tabla tiene una clave primaria. Primero intente ejecutar un comando desbloquear tablas para ver si eso lo soluciona.

Si todo lo demás falla, puede alterar la tabla para crear una nueva columna de clave primaria con incremento automático y eso debería solucionarlo. Una vez que haya terminado, debería poder eliminar la columna sin ningún problema.

Como siempre, desea hacer una copia de seguridad antes de alterar las tablas. :)

Nota: MySQL workbench no puede funcionar sin una clave primaria si esa es su cuestión. Sin embargo, si tiene una tabla de muchos a muchos, puede establecer ambas columnas como claves primarias que le permitirán editar los datos.

 49
Author: Thomas B,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-07-01 16:21:44

Si la tabla no tiene la clave primaria o única no nullable definida, entonces MySQL workbench no podría editar los datos.

 21
Author: Tarun Singhal,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-05-08 09:24:00

Si establece un esquema predeterminado para su conexión de base de datos, Select se ejecutará en modo de solo lectura hasta que establezca explícitamente su esquema

USE mydb;
SELECT * FROM mytable

Esto también se ejecutará en modo de edición:

SELECT * FROM mydb.mytable 

(MySQL 5.2.42 / MacOSX)

Espero que esto ayude.

 10
Author: Manitoba,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-17 13:38:10

Este es el Limitación conocida en MySQLWorkbench (no se puede editar la tabla sin PK):

Para Editar la Tabla:

Método 1: (método que no funciona en algunos casos)
haga clic con el botón derecho en una tabla dentro del Explorador de objetos y elija la opción Editar datos de tabla desde allí.

Método 2:
Prefiero sugerirle que agregue la Clave Primaria en su Lugar:

ALTER TABLE `your_table_name` ADD PRIMARY KEY (`column_name`);

Y es posible que desee eliminar las filas existentes primero:

Truncate table your_table_name
 4
Author: JerryGoyal,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-08-01 05:44:28

En MySQL Workbench necesita un ÍNDICE para editar, no necesita que sea PK (aunque agregar un PK también es una solución).

Puede hacer un ÍNDICE regular o un ÍNDICE compuesto. Eso es todo lo que MySQL WB necesita para arreglar la cosa de solo lectura (tengo v. 6.2 con MariaDB v. 10.1.4):

Simplemente haga clic derecho en la tabla, seleccione "Alter table..."luego vaya a la pestaña "Índices". En el panel izquierdo ponga un nombre personalizado para su índice, y en el panel central marque uno (asegúrese de que el vale sea único) o más campos (solo asegúrese de que la combinación es única)

 2
Author: aesede,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-11-13 13:42:50

De acuerdo con este error, el problema se solucionó en Workbench 5.2.38 para algunas personas y tal vez 5.2.39 para otros-puede actualizar a la última versión (5.2.40)?

Alternativamente, es posible solucionar el problema con:

SELECT *,'' FROM my_table
 1
Author: eggyal,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-05-30 11:14:11

Al pasar el cursor sobre el icono "solo lectura" en mysql workbench, se muestra una información sobre herramientas que explica por qué no se puede editar. En mi caso, dijo, solo las tablas con claves primarias o columnas únicas no anulables se pueden editar.

 1
Author: Tarun Garg,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-10-08 10:51:04

Estaba teniendo el problema de solo lectura incluso cuando estaba seleccionando la clave principal. Al final me di cuenta de que era un problema de casquillos. Al parecer, la columna PK debe estar encapsulada de la misma forma que se define en la tabla. usando: workbench 6.3 en windows

Solo lectura

SELECCIONE leadid,firstname,lastname, datecreated FROM lead;

Permitido editar

SELECCIONE LeadId,firstname,lastname, datecreated FROM lead;

 1
Author: Quad9x,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-08-30 18:38:19

Guiado por el post de Manitoba, encontré otra solución. Como resumen, las soluciones son:

  1. Con un comando USE

    USE mydb;
    SELECT * FROM mytable
    
  2. Con un prefijo de esquema explícito:

    SELECT * FROM mydb.mytable
    
  3. GUI

    En el panel "ESQUEMAS" del explorador de objetos, todos los iconos de la base de datos no se resaltan inicialmente si tiene el mismo problema. Así que puede hacer clic derecho en el icono de la base de datos que quería ser el predeterminado, seleccione "Establecer como esquema predeterminado".

 0
Author: Earth Engine,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-11-19 22:34:13

1.) Usted tiene que hacer que la clave principal única, entonces usted debe ser capaz de editar.

Haga clic derecho en su tabla en los esquemas "azules"- >ALTER TABLE, busque su clave primert (PK), luego marque la casilla de verificación, UN, la IA ya debe estar marcada. Después de eso solo aplicar y usted debe ser capaz de editar los datos de la tabla.

2.) También debe incluir la clave de primería I su declaración select

La Nr 1 no es realmente necesaria, sino una buena práctica.

 0
Author: Degar007,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-05-20 14:21:25

Si su consulta tiene alguna combinación, Mysql Workbench no le permitirá alterar la tabla, incluso si sus resultados son todos de una sola tabla.

Por ejemplo, la siguiente consulta

SELECT u.* FROM users u JOIN passwords p ON u.id=p.user_id WHERE p.password IS NULL;

No le permitirá editar los resultados o agregar filas, aunque los resultados estén limitados a una tabla. Usted debe hacer específicamente algo como:

SELECT * FROM users WHERE id=1012;

Y luego puede editar la fila y agregar filas a la tabla.

 0
Author: Keith Tyler,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-03-24 03:40:37