MySQL Workbench 5.2.37에서 테이블 데이터 편집을 시도 할 때 읽기 전용 모드입니다.
테이블에 기본 키가있는 경우에만 편집 할 수 있습니다.
기본 키가없는 테이블을 처리하는 수정 사항이 있습니까 ??
감사
제안 중 하나로 WB 5.2.40 업그레이드를 시도했습니다. 하지만 여전히이 문제는 존재합니다 .. 누구라도 도와 주시겠습니까?.
MySQL Workbench 5.2.37에서 테이블 데이터 편집을 시도 할 때 읽기 전용 모드입니다.
테이블에 기본 키가있는 경우에만 편집 할 수 있습니다.
기본 키가없는 테이블을 처리하는 수정 사항이 있습니까 ??
감사
제안 중 하나로 WB 5.2.40 업그레이드를 시도했습니다. 하지만 여전히이 문제는 존재합니다 .. 누구라도 도와 주시겠습니까?.
답변:
테이블에 기본 키가 있다고 가정합니다. 먼저 잠금 해제 테이블 명령을 실행하여 문제가 해결되는지 확인하십시오.
다른 모든 방법이 실패하면 테이블을 변경하여 자동 증가 기능이있는 새 기본 키 열을 만들 수 있습니다. 완료되면 문제없이 열을 제거 할 수 있습니다.
항상 그렇듯이 테이블을 변경하기 전에 백업을 만들고 싶습니다. :)
참고 : MySQL 워크 벤치는 문제인 경우 기본 키없이 작동 할 수 없습니다. 그러나 다 대다 테이블이있는 경우 두 열을 모두 데이터를 편집 할 수있는 기본 키로 설정할 수 있습니다.
이것은 MySQLWorkbench 의 알려진 제한 사항 입니다 (PK없이 테이블을 편집 할 수 없음).
방법 1 : (경우에 따라 방법이 작동하지 않음)
개체 브라우저에서 테이블을 마우스 오른쪽 버튼으로 클릭하고 거기에서 테이블 데이터 편집 옵션을 선택합니다.
방법 2 :
대신 기본 키를 추가하는 것이 좋습니다.
ALTER TABLE `your_table_name` ADD PRIMARY KEY (`column_name`);
먼저 기존 행을 제거 할 수 있습니다.
Truncate table your_table_name
MySQL Workbench에서는 편집 할 INDEX가 필요하며 PK 일 필요는 없습니다 (PK 추가도 솔루션 임).
일반 INDEX 또는 복합 INDEX를 만들 수 있습니다. 이것이 바로 MySQL WB가 읽기 전용 문제를 수정하는 데 필요한 전부입니다 (MariaDB v. 10.1.4와 함께 v. 6.2가 있습니다).
표를 마우스 오른쪽 버튼으로 클릭하고 "표 변경 ..."을 선택한 다음 "색인"탭으로 이동하십시오. 왼쪽 창에 인덱스에 대한 사용자 지정 이름을 입력하고 중간 창에서 하나 (밸리가 고유한지 확인) 또는 더 많은 필드 (조합이 고유한지 확인)를 선택합니다.
SELECT *, CONCAT('','') FROM my_table
. 아마도 그것은 당신에게 효과가 있습니까?
쿼리에 JOIN이 있으면 Mysql Workbench는 결과가 모두 단일 테이블에서 나온 경우에도 테이블을 변경할 수 없습니다.
예를 들어 다음 쿼리는
SELECT u.* FROM users u JOIN passwords p ON u.id=p.user_id WHERE p.password IS NULL;
결과가 하나의 테이블로 제한되어 있어도 결과를 편집하거나 행을 추가 할 수 없습니다. 다음과 같이 구체적으로 수행해야합니다.
SELECT * FROM users WHERE id=1012;
그런 다음 행을 편집하고 테이블에 행을 추가 할 수 있습니다.
SELECT u.* FROM users u WHERE u.id IN (SELECT user_id FROM passwords WHERE p.password IS NULL);
두 테이블을 조인하여 가져올 때 MySQL은 읽기 전용 모드로 실행되며 두 테이블의 열이 결과에 포함됩니다. 그러면 값을 직접 업데이트 할 수 없습니다.