Vraag MySQL Workbench Tabel bewerken Gegevens kunnen alleen worden gelezen


Bij het proberen Tabelgegevens bewerken in MySQL Workbench 5.2.37, is het in de alleen-lezen modus.

Het is alleen bewerkbaar als de tabel een primaire sleutel heeft.

Is er een oplossing voor tafel zonder primaire sleutel?

Bedankt

Als een van de suggesties probeerde ik WB 5.2.40 te upgraden. Maar toch bestaat dit probleem .. Kan iemand me helpen aub ..


47
2018-05-30 11:06


oorsprong


antwoorden:


Ik neem aan dat de tabel een primaire sleutel heeft. Probeer eerst een ontgrendelingstabelopdracht uit te voeren om te kijken of dat het probleem verhelpt.

Als al het andere faalt, kunt u de tabel wijzigen om een ​​nieuwe primaire sleutelkolom met automatische ophoging te maken en die hopelijk moet worden opgelost. Als u klaar bent, kunt u de kolom probleemloos verwijderen.

Zoals altijd wil je een back-up maken voordat je tabellen verandert. :)

Opmerking: MySQL workbench kan niet werken zonder een primaire sleutel als dat uw probleem is. Als u echter een veel te veel tabel hebt, kunt u beide kolommen instellen als primaire sleutels waarmee u de gegevens kunt bewerken.


44
2017-07-01 16:21



als de tabel geen primaire sleutel of een unieke niet-nullabel gedefinieerd heeft, kan MySql-werkbank de gegevens niet bewerken.


19
2018-05-08 09:24



Als u een standaardschema voor uw DB-verbinding instelt, wordt Select in de alleen-leesmodus uitgevoerd totdat u uw schema expliciet instelt

USE mydb;
SELECT * FROM mytable

dit zal ook in de bewerkmodus werken:

SELECT * FROM mydb.mytable 

(MySql 5.2.42 / MacOsX)

Ik hoop dat dit helpt.


10
2017-08-23 14:42



Dit is de Bekende beperking in MySQLWorkbench (u kunt tabel zonder PK niet bewerken):

Om de tabel te bewerken:

Methode 1:  (methode werkt niet in sommige gevallen)
klik met de rechtermuisknop op een tabel in de Objectbrowser en kies de optie Tabelgegevens bewerken vanaf daar.

Methode 2:
Ik zou je eerder willen aanraden om in plaats daarvan Primaire sleutel toe te voegen:

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

en misschien wilt u eerst de bestaande rijen verwijderen:

Truncate table your_table_name

4
2018-03-04 10:54



In MySQL Workbench heb je een INDEX nodig om te bewerken, het hoeft niet PK te zijn (hoewel het toevoegen van een PK ook een oplossing is).

U kunt een gewone INDEX of samengestelde INDEX maken. Dat is alles wat MySQL WB nodig heeft om het alleen-lezen te repareren (ik heb v. 6.2 met MariaDB v. 10.1.4):

Klik gewoon met de rechtermuisknop, selecteer "Tabel wijzigen ..." en ga vervolgens naar het tabblad "Indexen". Plaats in het linkerdeelvenster een aangepaste naam voor uw index en in het middelste paneel een vinkje (zorg ervoor dat de vale uniek is) of meer velden (zorg er alleen voor dat de combinatie uniek is)


2
2017-11-13 13:42



Volgens deze bug, het probleem werd opgelost in Workbench 5.2.38 voor sommige mensen en misschien 5.2.39 voor anderen-kunt u upgrade naar de nieuwste versie (5.2.40)?

Als alternatief is het mogelijk om te werken met:

SELECT *,'' FROM my_table

1
2018-05-30 11:14



Bewegen over het pictogram "alleen lezen" in mysql workbench toont een tooltip die uitlegt waarom het niet kan worden bewerkt. In mijn geval zei hij dat alleen tabellen met primaire sleutels of unieke niet-null-bare kolommen kunnen worden bewerkt.


1
2017-10-08 10:51



Geleid door het bericht van Manitoba, vond ik een andere oplossing. Samenvattend zijn de oplossingen:

  1. Met een USE-commando

    USE mydb;
    SELECT * FROM mytable
    
  2. Met een expliciete schema-prefix:

    SELECT * FROM mydb.mytable
    
  3. GUI

    In het "SCHEMAS" -venster van de Objectbrowser worden aanvankelijk niet alle databasepictogrammen gemarkeerd als u hetzelfde probleem hebt. U kunt dus met de rechtermuisknop klikken op het databasepictogram dat u als standaard wilde gebruiken, selecteer "Instellen als standaardschema".


0
2017-11-19 22:34



1.) Je moet de primaire sleutel uniek maken, dan zou je in staat moeten zijn om te bewerken.

klik met de rechtermuisknop op uw tabel in de "blauwe" schema's -> ALTER TABLE, zoek naar uw primert key (PK), schakel dan gewoon het selectievakje in, UN, de AI zou al moeten worden gecontroleerd. Daarna solliciteren en je zou in staat moeten zijn om de tabelgegevens te bewerken.

2.) U moet ook de hoofdsleutel I uw geselecteerde verklaring opnemen

Nr 1 is niet echt noodzakelijk, maar een goede gewoonte.


0
2018-05-20 14:14



Als uw vraag JOINS heeft, staat Mysql Workbench niet toe dat u de tabel wijzigt, zelfs als uw resultaten allemaal uit een enkele tabel komen.

Bijvoorbeeld de volgende vraag

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

staat u niet toe om de resultaten te bewerken of rijen toe te voegen, ook al zijn de resultaten beperkt tot één tabel. Je moet specifiek iets doen als:

SELECT * FROM users WHERE id=1012;

en dan kunt u de rij bewerken en rijen aan de tabel toevoegen.


0
2018-03-24 03:40