2014-02-11 4 views
0

Я новичок в DB2 и был уверен, как написать ниже запрос в DB2. Это довольно простой вопрос, который я знаю, я просто хочу иметь сравнительный взгляд на два.Версия DB2 для запроса

DECLARE 
CURSOR CURRSOR IS 
SELECT * FROM EMPLOYEES WHERE EMPNO=100; 
BEGIN 
    FOR i IN CURRSOR 
     LOOP 
      DBMS_OUTPUT.PUT_LINE('THE NAME OF THE EMPLOYEE IS'|| i.ename); 
     END LOOP; 
EXCEPTION 
     WHEN NO_DATA_FOUND THEN 
      RAISE_APPLICATION_ERROR(-20001,'THERE IS NO EMPLOYEE WITH EMPLOYEE NUMBER 100'); 
END; 

ответ

0
BEGIN 
    FOR each_record AS 
    c1 CURSOR FOR 
     SELECT * from EMPLOYEES 
    DO 
     DBMS_OUTPUT.PUT('THE NAME OF THE EMPLOYEE IS'|| ENAME); 
    END FOR; 
    EXCEPTION 
     WHEN NO_DATA_FOUND THEN 
      RAISE_APPLICATION_ERROR(-20001, 'THERE IS NO EMPLOYEE WITH EMPLOYEE NUMBER 100'); 
    END; 
+0

Спасибо, почему вы не decalre курсор? Также every_record это ключевое слово? Я прочитал, что мы можем написать PL/SQL-запрос в DB2. это правда? – user3274103

+0

Не обязательно декларировать курсор Явно. Вы также можете попробовать динамические курсоры прокрутки, Подготовленные операторы могут быть выполнены с ее помощью. –

+0

Могу ли я написать коды DB2 в PL/SQL? пожалуйста, дайте мне знать – user3274103

Смежные вопросы