수색…


PL / SQL의 배정 모델

모든 프로그래밍 언어를 통해 변수에 값을 할당 할 수 있습니다. 일반적으로 왼쪽에 서있는 변수에 값이 지정됩니다. 모든 현대 프로그래밍 언어에서 전체 할당 작업의 프로토 타입은 다음과 같습니다.

left_operand assignment_operand right_operand instructions_of_stop

그러면 왼쪽 피연산자에 오른쪽 피연산자가 할당됩니다. PL / SQL에서이 작업은 다음과 같습니다.

left_operand := right_operand;

왼쪽 피연산자 는 항상 변수 여야합니다 . 오른쪽 피연산자는 값, 변수 또는 함수 일 수 있습니다.

set serveroutput on
declare
  v_hello1 varchar2(32767);
  v_hello2 varchar2(32767);
  v_hello3 varchar2(32767);
  function hello return varchar2 is begin return 'Hello from a function!'; end;
begin
   -- from a value (string literal)
  v_hello1 := 'Hello from a value!';
   -- from variable
  v_hello2 := v_hello1;
  -- from function
  v_hello3 := hello; 

  dbms_output.put_line(v_hello1);
  dbms_output.put_line(v_hello2);
  dbms_output.put_line(v_hello3);
end;
/

코드 블록이 SQL * Plus에서 실행되면 콘솔에 다음 출력이 인쇄됩니다.

Hello from a value!
Hello from a value!
Hello from a function!

PL / SQL에는 "오른쪽에서 왼쪽으로"할당 할 수있는 기능이 있습니다. SELECT INTO 문에서 수행 할 수 있습니다. 이 instrunction의 프로토 타입은 아래에서 찾을 수 있습니다.

SELECT [ literal | column_value ]

INTO local_variable

FROM [ table_name | aliastable_name ]

WHERE comparison_instructions;

이 코드는 문자 리터럴을 로컬 변수에 할당합니다.

set serveroutput on
declare
  v_hello varchar2(32767);
begin
  select 'Hello world!'
  into v_hello
  from dual;

  dbms_output.put_line(v_hello);
end;
/

코드 블록이 SQL * Plus에서 실행되면 콘솔에 다음 출력이 인쇄됩니다.

Hello world!

Asignment는 "오른쪽에서 왼쪽으로" 표준 이 아니지만 프로그래머와 사용자에게 중요한 기능입니다. 일반적으로 프로그래머가 PL / SQL에서 커서를 사용할 때 사용됩니다.이 기술은 SQL 커서에서 커서의 한 줄에 단일 스칼라 값 또는 열 세트를 반환하려는 경우에 사용됩니다.

추가 읽기 :



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow