सेट-आधारित प्रोग्रामिंग एक सेट की गणितीय अवधारणा पर आधारित है, और ऑपरेटर हैं जो एक समय में पूरे सेट पर काम करते हैं। प्रक्रियात्मक (आरबीएआर) प्रोग्रामिंग फाइलों और अभिलेखों की पारंपरिक कंप्यूटर अवधारणाओं पर आधारित है। तो 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;
प्रक्रियात्मक में संस्करण, एक समय में केवल एक कर्मचारी पंक्ति अपडेट की जा रही है; सेट-आधारित संस्करण में, "विभाग एक्स में कर्मचारियों के सेट" में सभी पंक्तियां एक बार में अपडेट की जाती हैं (जहां तक हम चिंतित हैं)।
यह सुनिश्चित नहीं है कि यह आपके लिंक में पहले से ही जो कुछ भी पढ़ेगा, उसमें कुछ भी जोड़ता है, लेकिन मैंने सोचा कि मेरे पास एक शॉट होगा!
स्रोत
2009-11-06 13:49:09
बेशक सेट-आधारित संस्करण लगभग हमेशा तेज होता है, साथ ही आमतौर पर बहुत अधिक होता है। – HLGEM