oracle의 업데이트 사용법: 1. 테이블의 데이터를 수정하는 데 사용되며 구문은 "UPDATE 테이블 이름 SET 열 이름 = 새 값 WHERE 열 이름 = 특정 값"입니다. 2. 두 개를 연결하여 테이블을 만드는 데 사용됩니다. 테이블 보기 및 업데이트.
이 튜토리얼의 운영 환경: Windows 10 시스템, Oracle 11g 버전, Dell G3 컴퓨터.
update_statement ::= UPDATE {table_reference | [THE] (subquery1)} [alias] SET { column_name = {sql_expression | (subquery2)} | (column_name [,column_name]...) = (subquery3)} [,{column_name = {sql_expression | (subquery2)} | (column_name [,column_name]...) = (subquery3) }]... [WHERE {search_condition | CURRENT_OF cursor_name}] [returning_clause]
표준 업데이트
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值。
update Join View
update (select bonus from employee_bonus b inner join employees e on b.employee_id = e.employee_id where e.bonus_eligible = 'N') t set t.bonus = 0
위의 원칙과 마찬가지로 마찬가지로 괄호 안에 있는 것은 뷰이고 세트에 있는 것은 업데이트해야 하는 필드입니다. 이 방법은 직접적이고 효율적이지만 직원 테이블의 기본 키가 표시되어야 한다는 점에서 매우 제한적입니다. where 조건을 사용하지 않으면 오류가 보고됩니다. ORA-01779: 키 값이 저장되지 않은 테이블에 해당하는 열은 수정할 수 없습니다.
merge into
MERGE INTO table_name alias1 USING (table | view | sub_query) alias2 ON (join condition) WHEN MATCHED THEN UPDATE table_name SET col1 = col_val1,col2 = col2_val WHEN NOT MATCHED THEN INSERT (column_list) VALUES (column_values);
alias2에서 선택한 데이터를 alias1의 ON(조인 조건)과 비교하여 일치하면 업데이트되는 작업입니다. , 일치하는 항목이 없으면 삽입 작업(Insert)을 수행합니다.
@H_301_73@Cursor 방법
Fast Cursor
begin for cur in (table|subquery) loop update_statement end loop; end;
Display Cursor
SET SERVEROUTPUT ON DECLARE CURSOR emp_cursor IS SELECT empno,ename FROM emp; BEGIN FOR Emp_record IN emp_cursor LOOP update_statement; END LOOP; END;
for 루프는 배치 데이터를 업데이트하는 방법과 Oracle의 rowid 물리적 필드를 제공합니다(Oracle에는 기본적으로 각 테이블에 대한 rowid 필드가 있습니다. 고유 인덱스), 업데이트할 레코드를 빠르게 찾을 수 있고 복잡한 쿼리 문을 지원할 수 있습니다.
추천 튜토리얼: "
Oracle Video Tutorial위 내용은 오라클에서 업데이트 사용법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!