RBAR по сравнению с основанным на наборе программированием для SQL

Не видели, что любой упоминает instanceof, реализовываемый таким способом, которым проверка пустой указатель не необходима.

Вместо:

if( null != aObject && aObject instanceof String )
{
    ...
}

просто использование:

if( aObject instanceof String )
{
    ...
}
10
задан ErikE 12 February 2010 в 01:55
поделиться

1 ответ

Программирование на основе наборов основано на математической концепции набора и имеет операторы, которые одновременно работают со всем набором. Процедурное (RBAR) программирование больше основано на традиционных компьютерных концепциях файлов и записей. Таким образом, чтобы увеличить зарплату всех сотрудников в отделе X на 10%:

На основе набора:

UPDATE employees SET salary = salary * 1.10 WHERE department = 'X';

Процедурные (крайний пример, псевдокод):

OPEN cursor FOR SELECT * FROM employees;
LOOP
   FETCH cursor INTO record;
   EXIT WHEN (no more records to fetch);
   IF record.department = 'X' THEN
      UPDATE employees
      SET    salary = salary * 1.10
      WHERE  employee_id = record.employee_id;
   END IF
END LOOP
CLOSE cursor;

В процедурной версии обновляется только одна строка сотрудников вовремя; в версии на основе наборов все строки в «наборе сотрудников в отделе X» обновляются сразу (насколько нам известно).

Не уверен, что это добавляет что-нибудь к тому, что вы уже прочитали в своих ссылках , но я думал, что попробую!

13
ответ дан 3 December 2019 в 17:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: