MySQL UPDATE 쿼리는 데이터베이스 내 MySQL 테이블의 데이터를 수정하는 데 사용되는 DML 문입니다. 실제 시나리오에서는 일정 기간 동안 기록이 변경됩니다. 따라서 테이블의 값도 변경해야 합니다. 이를 위해서는 UPDATE 쿼리를 사용해야 합니다.
UPDATE 문은 다음과 함께 사용됩니다. 세트 그리고 어디 조항 . SET 절은 지정된 열의 값을 변경하는 데 사용됩니다. 한 번에 하나 또는 여러 개의 열을 업데이트할 수 있습니다.
통사론
다음은 데이터를 다음과 같이 수정하는 UPDATE 명령의 일반 구문입니다. MySQL 테이블:
UPDATE table_name SET column_name1 = new-value1, column_name2=new-value2, ... [WHERE Clause]
매개변수 설명
UPDATE 문의 구문에 사용되는 매개변수에 대한 설명은 다음과 같습니다.
매개변수 | 설명 |
---|---|
테이블_이름 | 업데이트를 수행하려는 테이블의 이름입니다. |
컬럼_이름 | SET절을 이용하여 새로운 값으로 업데이트를 수행하려는 컬럼의 이름이다. 여러 열을 업데이트해야 하는 경우 각 열에 값을 지정하여 쉼표 연산자로 열을 구분합니다. |
WHERE 절 | 선택 사항입니다. 업데이트를 수행할 행 이름을 지정하는 데 사용됩니다. 이 절을 생략하면 MySQL은 모든 행을 업데이트합니다. |
메모:
- 이 문은 한 번에 단일 테이블의 값을 업데이트할 수 있습니다.
- 이 명령문을 사용하여 단일 또는 여러 열을 모두 업데이트할 수 있습니다.
- WHERE 절을 사용하여 모든 조건을 지정할 수 있습니다.
- WHERE 절은 매우 중요합니다. 때로는 단일 행만 업데이트하고 싶고, 이 절을 생략하면 실수로 테이블의 모든 행이 업데이트되기 때문입니다.
UPDATE 명령은 MySQL에서 다음 수정자를 지원합니다.
낮은 우선 순위: 이 수정자는 테이블을 읽는 다른 클라이언트가 없을 때까지 UPDATE 명령의 실행을 지연하도록 명령문에 지시합니다. 테이블 수준 잠금만 사용하는 스토리지 엔진에만 적용됩니다.
무시하다: 이 수정자를 사용하면 오류가 발생하더라도 문이 실행을 중단하지 않을 수 있습니다. 발견하면 중복 키 충돌이 발생하면 행이 업데이트되지 않습니다.
따라서 전체 구문은 업데이트 문 다음과 같습니다:
UPDATE [LOW_PRIORITY] [IGNORE] table_name SET column_assignment_list [WHERE condition]
예:
다양한 예를 통해 UPDATE 문을 이해해 보겠습니다. 테이블이 있다고 가정하자 '훈련자' 내 '테스트DB' 데이터 베이스. 'trainer' 테이블 내의 데이터를 업데이트할 예정입니다.
단일 열 업데이트
이 쿼리는 Java의 이메일 ID 다음과 같이 새 ID를 사용합니다.
UPDATE trainer SET email = '[email protected]' WHERE course_name = 'Java';
성공적으로 실행되면 아래 명령문을 사용하여 테이블을 확인합니다.
자바 동적 배열
SELECT * FROM trainer;
출력에서 테이블이 조건에 따라 업데이트되는 것을 볼 수 있습니다.
여러 열 업데이트
UPDATE 문을 사용하면 쉼표로 구분된 열 목록을 지정하여 여러 열을 업데이트할 수도 있습니다. 아래와 같은 테이블이 있다고 가정해 보겠습니다.
이 진술은 다음을 업데이트할 것이라고 설명합니다. 이름 그리고 직업 누구의 아이디 = 105 에서 사람들 다음과 같이 테이블:
UPDATE People SET name = 'Mary', occupation = 'Content Writer' WHERE id = 105;
아래 출력을 확인할 수 있습니다.
문자열을 대체하는 UPDATE 문
MySQL의 UPDATE 문을 사용하여 특정 열의 문자열 이름을 변경할 수도 있습니다. 다음 예에서는 이메일의 도메인 부분을 업데이트합니다. 안드로이드 코스:
UPDATE Trainer_table SET email = REPLACE(email,'@javatpoint.com','@tutorialandexample.com') WHERE course_name = 'Testing';
다음과 같은 출력이 제공됩니다.