DBMS — MCQ Practice

Hindi aur English dono mein practice karo — click karo answer check karne ke liye

📚 2982 Questions 🌐 Hindi + English ✅ Free
भाषा / Language:
2982 questions
1756
EN + हिं Easy
GB What is the concept of database firewall and what does it do?
IN डेटाबेस फ़ायरवॉल की अवधारणा क्या है और यह क्या करती है?
A
A network firewall that blocks all database traffic एक नेटवर्क फ़ायरवॉल जो सभी डेटाबेस ट्रैफ़िक को अवरुद्ध करता है
B
A firewall rule that blocks external access to the database port एक फ़ायरवॉल नियम जो डेटाबेस पोर्ट तक बाहरी पहुंच को रोकता है
C
A security layer that sits between the application and the database server monitoring and filtering SQL statements in real-time based on whitelisted allowed query patterns blocking anomalous or malicious SQL - detects SQL injection unauthorized queries and policy violations एक सुरक्षा परत जो एप्लिकेशन और डेटाबेस सर्वर के बीच बैठती है, श्वेतसूचीबद्ध अनुमत क्वेरी पैटर्न के आधार पर वास्तविक समय में एसक्यूएल स्टेटमेंट की निगरानी और फ़िल्टर करती है, जो असामान्य या दुर्भावनापूर्ण एसक्यूएल को अवरुद्ध करती है - एसक्यूएल इंजेक्शन अनधिकृत प्रश्नों और नीति उल्लंघनों का पता लगाती है।
D
A feature within the DBMS that blocks malformed SQL DBMS के भीतर एक सुविधा जो विकृत SQL को ब्लॉक करती है
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) Database firewall: monitors all SQL traffic, compares against a learned whitelist of normal query patterns. Blocks: SQL injection patterns, queries with unusual structure, access to unauthorized tables, queries at unusual times, excessive data extraction. Examples: Oracle Database Firewall, Imperva SecureSphere. Works at network layer or DBMS proxy.
व्याख्या (हिन्दी) डेटाबेस फ़ायरवॉल: सभी SQL ट्रैफ़िक पर नज़र रखता है, सामान्य क्वेरी पैटर्न की सीखी हुई श्वेतसूची से तुलना करता है। ब्लॉक: एसक्यूएल इंजेक्शन पैटर्न, असामान्य संरचना वाले प्रश्न, अनधिकृत तालिकाओं तक पहुंच, असामान्य समय पर प्रश्न, अत्यधिक डेटा निष्कर्षण। उदाहरण: ओरेकल डेटाबेस फ़ायरवॉल, इम्पेर्वा सिक्योरस्फेयर। नेटवर्क लेयर या DBMS प्रॉक्सी पर काम करता है।
1757
EN + हिं Medium
GB What is the concept of data classification in database security and why is it important?
IN डेटाबेस सुरक्षा में डेटा वर्गीकरण की अवधारणा क्या है और यह महत्वपूर्ण क्यों है?
A
A system for organizing database indexes by importance महत्व के आधार पर डेटाबेस अनुक्रमणिका को व्यवस्थित करने की एक प्रणाली
B
Classifying SQL statements by their complexity SQL कथनों को उनकी जटिलता के आधार पर वर्गीकृत करना
C
The process of categorizing data based on its sensitivity level (e.g. public internal confidential restricted/top-secret) so that appropriate security controls can be applied proportionally - critical because it determines access controls encryption requirements audit levels backup policies and regulatory compliance obligations डेटा को उसके संवेदनशीलता स्तर (उदाहरण के लिए सार्वजनिक आंतरिक गोपनीय प्रतिबंधित/टॉप-सीक्रेट) के आधार पर वर्गीकृत करने की प्रक्रिया ताकि उचित सुरक्षा नियंत्रण आनुपातिक रूप से लागू किया जा सके - महत्वपूर्ण क्योंकि यह एक्सेस नियंत्रण, एन्क्रिप्शन आवश्यकताओं, ऑडिट स्तर, बैकअप नीतियों और नियामक अनुपालन दायित्वों को निर्धारित करता है।
D
Classifying databases by their performance tier डेटाबेस को उनके प्रदर्शन स्तर के आधार पर वर्गीकृत करना
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) Data classification framework: Public (freely shareable), Internal (company use only), Confidential (business sensitive, limited access), Restricted/Top Secret (highly sensitive: PII, financial, health records). Each tier has different: access controls (RBAC), encryption (none/at-rest/in-transit+at-rest), audit level, retention policies, regulatory requirements (GDPR, HIPAA, PCI-DSS).
व्याख्या (हिन्दी) डेटा वर्गीकरण ढांचा: सार्वजनिक (स्वतंत्र रूप से साझा करने योग्य), आंतरिक (केवल कंपनी का उपयोग), गोपनीय (व्यवसाय संवेदनशील, सीमित पहुंच), प्रतिबंधित/शीर्ष गुप्त (अत्यधिक संवेदनशील: पीआईआई, वित्तीय, स्वास्थ्य रिकॉर्ड)। प्रत्येक स्तर में अलग-अलग हैं: एक्सेस कंट्रोल (आरबीएसी), एन्क्रिप्शन (कोई नहीं/एट-रेस्ट/इन-ट्रांजिट+एट-रेस्ट), ऑडिट स्तर, अवधारण नीतियां, नियामक आवश्यकताएं (जीडीपीआर, एचआईपीएए, पीसीआई-डीएसएस)।
1758
EN + हिं Easy
GB What is the concept of database hardening and what does it include?
IN डेटाबेस हार्डनिंग की अवधारणा क्या है और इसमें क्या शामिल है?
A
Increasing database hardware capacity डेटाबेस हार्डवेयर क्षमता बढ़ाना
B
Making database backups more resilient डेटाबेस बैकअप को अधिक लचीला बनाना
C
Making database queries run faster डेटाबेस क्वेरीज़ को तेज़ बनाना
D
The process of reducing the attack surface of a database by applying security best practices: removing unnecessary features/users/sample databases changing default passwords patching known vulnerabilities disabling dangerous SQL functions restricting network access and following vendor security guidelines (e.g. CIS Benchmarks) सुरक्षा सर्वोत्तम प्रथाओं को लागू करके डेटाबेस की आक्रमण सतह को कम करने की प्रक्रिया: अनावश्यक सुविधाओं/उपयोगकर्ताओं/नमूना डेटाबेस को हटाना, डिफ़ॉल्ट पासवर्ड बदलना, ज्ञात कमजोरियों को पैच करना, खतरनाक SQL फ़ंक्शंस को अक्षम करना, नेटवर्क पहुंच को प्रतिबंधित करना और विक्रेता सुरक्षा दिशानिर्देशों (जैसे सीआईएस बेंचमार्क) का पालन करना।
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) Database hardening: (1) Remove unnecessary: sample databases (e.g., Northwind/Adventureworks), guest accounts, anonymous logins, public grants. (2) Patch: apply security patches regularly. (3) Configure: disable dangerous functions (xp_cmdshell in SQL Server, FILE privilege in MySQL), restrict remote root login, enable SSL/TLS. (4) Audit: enable auditing, configure to central log system. CIS Benchmarks provide specific guidance.
व्याख्या (हिन्दी) डेटाबेस सख्त करना: (1) अनावश्यक हटाएं: नमूना डेटाबेस (जैसे, नॉर्थविंड/एडवेंचरवर्क्स), अतिथि खाते, अनाम लॉगिन, सार्वजनिक अनुदान। (2) पैच: सुरक्षा पैच नियमित रूप से लगाएं। (3) कॉन्फ़िगर करें: खतरनाक फ़ंक्शन अक्षम करें (SQL सर्वर में xp_cmdshell, MySQL में FILE विशेषाधिकार), दूरस्थ रूट लॉगिन प्रतिबंधित करें, SSL/TLS सक्षम करें। (4) ऑडिट: ऑडिटिंग सक्षम करें, सेंट्रल लॉग सिस्टम में कॉन्फ़िगर करें। सीआईएस बेंचमार्क विशिष्ट मार्गदर्शन प्रदान करते हैं।
1759
EN + हिं Medium
GB What is the principle of separation of duties in database administration and how is it implemented?
IN डेटाबेस प्रशासन में कर्तव्यों के पृथक्करण का सिद्धांत क्या है और इसे कैसे लागू किया जाता है?
A
A security principle that requires splitting privileged operations among multiple people so no single person can perform all steps of a sensitive operation alone - prevents insider threats and requires collusion for fraud. Implemented by: separating DBA roles (application DBA vs security DBA) keeping DBAs out of application user tables using DAM tools that DBAs cannot disable एक सुरक्षा सिद्धांत जिसके लिए कई लोगों के बीच विशेषाधिकार प्राप्त संचालन को विभाजित करने की आवश्यकता होती है ताकि कोई भी व्यक्ति संवेदनशील ऑपरेशन के सभी चरणों को अकेले नहीं कर सके - अंदरूनी खतरों को रोकता है और धोखाधड़ी के लिए मिलीभगत की आवश्यकता होती है। इसके द्वारा कार्यान्वित: डीबीए भूमिकाओं को अलग करना (एप्लिकेशन डीबीए बनाम सुरक्षा डीबीए) डीएएम टूल का उपयोग करके डीबीए को एप्लिकेशन उपयोगकर्ता तालिकाओं से बाहर रखना जिन्हें डीबीए अक्षम नहीं कर सकते
B
Dividing database work among multiple servers डेटाबेस कार्य को कई सर्वरों के बीच विभाजित करना
C
Separating read operations from write operations पढ़ने के संचालन को लिखने के संचालन से अलग करना
D
Having multiple DBAs perform the same tasks एकाधिक डीबीए होने से समान कार्य होते हैं
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) Separation of duties in databases: Application DBA: manages schema, performance, backup. Cannot access sensitive data. Security DBA/ISSO: manages user access, auditing, security policies. Cannot change application schema. DAM/Audit system: maintained by security team, not DBAs. Encryption key management: separate key management team. This ensures no single person can both access sensitive data AND disable the audit trail.
व्याख्या (हिन्दी) डेटाबेस में कर्तव्यों का पृथक्करण: एप्लिकेशन डीबीए: स्कीमा, प्रदर्शन, बैकअप का प्रबंधन करता है। संवेदनशील डेटा तक नहीं पहुंच सकते. सुरक्षा डीबीए/आईएसएसओ: उपयोगकर्ता पहुंच, ऑडिटिंग, सुरक्षा नीतियों का प्रबंधन करता है। एप्लिकेशन स्कीमा नहीं बदला जा सकता. डीएएम/ऑडिट प्रणाली: सुरक्षा टीम द्वारा बनाए रखा जाता है, डीबीए द्वारा नहीं। एन्क्रिप्शन कुंजी प्रबंधन: अलग कुंजी प्रबंधन टीम। यह सुनिश्चित करता है कि कोई भी व्यक्ति संवेदनशील डेटा तक नहीं पहुंच सकता और ऑडिट ट्रेल को अक्षम नहीं कर सकता।
1760
EN + हिं Easy
GB What is the OWASP Top 10 for databases and what are the most critical database-related web application vulnerabilities?
IN डेटाबेस के लिए OWASP शीर्ष 10 क्या है और सबसे महत्वपूर्ण डेटाबेस-संबंधी वेब एप्लिकेशन कमजोरियाँ क्या हैं?
A
A ranking of the 10 most popular databases 10 सबसे लोकप्रिय डेटाबेस की रैंकिंग
B
A list of the 10 most common database performance issues 10 सबसे आम डेटाबेस प्रदर्शन समस्याओं की सूची
C
A list of the most critical security risks for web applications; key database-related vulnerabilities include: (1) Injection (SQL injection is most common) (2) Broken access control (unauthorized data access) (3) Security misconfiguration (default passwords public grants) (4) Sensitive data exposure (unencrypted PII) and (5) Insufficient logging and monitoring (no audit trail) वेब अनुप्रयोगों के लिए सबसे महत्वपूर्ण सुरक्षा जोखिमों की सूची; प्रमुख डेटाबेस-संबंधित कमजोरियों में शामिल हैं: (1) इंजेक्शन (एसक्यूएल इंजेक्शन सबसे आम है) (2) टूटा हुआ एक्सेस नियंत्रण (अनधिकृत डेटा एक्सेस) (3) सुरक्षा गलत कॉन्फ़िगरेशन (डिफ़ॉल्ट पासवर्ड सार्वजनिक अनुदान) (4) संवेदनशील डेटा एक्सपोज़र (अनएन्क्रिप्टेड पीआईआई) और (5) अपर्याप्त लॉगिंग और मॉनिटरिंग (कोई ऑडिट ट्रेल नहीं)
D
A checklist of DBMS version compatibility requirements डीबीएमएस संस्करण संगतता आवश्यकताओं की एक चेकलिस्ट
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) OWASP Top 10 database risks: A01 Broken Access Control (unauthorized table/row access). A03 Injection (SQL injection via user input). A02 Cryptographic Failures (unencrypted sensitive data at rest or in transit). A05 Security Misconfiguration (default credentials, PUBLIC grants, unnecessary features). A09 Security Logging and Monitoring Failures (no audit trail, logs not monitored). Prevention: parameterized queries, RBAC, TDE, auditing, vulnerability assessment.
व्याख्या (हिन्दी) OWASP शीर्ष 10 डेटाबेस जोखिम: A01 टूटा हुआ एक्सेस नियंत्रण (अनधिकृत तालिका/पंक्ति पहुंच)। A03 इंजेक्शन (उपयोगकर्ता इनपुट के माध्यम से SQL इंजेक्शन)। A02 क्रिप्टोग्राफ़िक विफलताएँ (विश्राम या ट्रांज़िट में अनएन्क्रिप्टेड संवेदनशील डेटा)। A05 सुरक्षा गलत कॉन्फ़िगरेशन (डिफ़ॉल्ट क्रेडेंशियल, सार्वजनिक अनुदान, अनावश्यक सुविधाएँ)। A09 सुरक्षा लॉगिंग और मॉनिटरिंग विफलताएं (कोई ऑडिट ट्रेल नहीं, लॉग की निगरानी नहीं की गई)। रोकथाम: पैरामीटरयुक्त प्रश्न, आरबीएसी, टीडीई, ऑडिटिंग, भेद्यता मूल्यांकन।
1761
EN + हिं Easy
GB What is data privacy by design in the context of database systems?
IN डेटाबेस सिस्टम के संदर्भ में डिज़ाइन द्वारा डेटा गोपनीयता क्या है?
A
A design pattern for encrypting all database columns सभी डेटाबेस कॉलम को एन्क्रिप्ट करने के लिए एक डिज़ाइन पैटर्न
B
An approach where privacy protections are built into database systems from the beginning (by design) rather than added later (by afterthought); includes: minimizing data collection (only store what is needed) purpose limitation (data used only for stated purpose) data retention policies (auto-delete after retention period) privacy-preserving queries (differential privacy k-anonymity) and privacy impact assessments before schema changes एक दृष्टिकोण जहां गोपनीयता सुरक्षा को बाद में जोड़े जाने के बजाय शुरुआत से (डिज़ाइन द्वारा) डेटाबेस सिस्टम में बनाया जाता है; इसमें शामिल हैं: डेटा संग्रह को कम करना (केवल वही संग्रहीत करना जो आवश्यक है) उद्देश्य सीमा (डेटा केवल बताए गए उद्देश्य के लिए उपयोग किया जाता है) डेटा प्रतिधारण नीतियां (प्रतिधारण अवधि के बाद स्वचालित रूप से हटाएं) गोपनीयता-संरक्षण क्वेरी (विभेदक गोपनीयता के-गुमनाम) और स्कीमा परिवर्तन से पहले गोपनीयता प्रभाव आकलन
C
A requirement to obtain user consent before storing data डेटा संग्रहीत करने से पहले उपयोगकर्ता की सहमति प्राप्त करने की आवश्यकता
D
Designing databases for maximum performance अधिकतम प्रदर्शन के लिए डेटाबेस डिज़ाइन करना
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) Privacy by design principles for databases: (1) Minimize data collection: do not store data you do not need. (2) Purpose limitation: tag data with its purpose. (3) Retention: implement automated data expiration (TTL, partition delete). (4) Anonymization: mask/anonymize data in non-prod environments. (5) Access control: enforce least privilege. (6) Privacy impact assessments: evaluate new features for privacy risks. (7) Pseudonymization: replace direct identifiers with pseudonyms.
व्याख्या (हिन्दी) डेटाबेस के लिए डिज़ाइन सिद्धांतों द्वारा गोपनीयता: (1) डेटा संग्रह कम करें: उस डेटा को संग्रहीत न करें जिसकी आपको आवश्यकता नहीं है। (2) उद्देश्य सीमा: डेटा को उसके उद्देश्य के साथ टैग करें। (3) प्रतिधारण: स्वचालित डेटा समाप्ति (टीटीएल, विभाजन हटाना) लागू करें। (4) गुमनामीकरण: गैर-उत्पाद वातावरण में डेटा को छिपाना/गुमनाम करना। (5) अभिगम नियंत्रण: कम से कम विशेषाधिकार लागू करें। (6) गोपनीयता प्रभाव आकलन: गोपनीयता जोखिमों के लिए नई सुविधाओं का मूल्यांकन करें। (7) छद्मनामीकरण: प्रत्यक्ष पहचानकर्ताओं को छद्मनाम से बदलें।
1762
EN + हिं Medium
GB What is the difference between a PL/SQL stored procedure and a stored function?
IN पीएल/एसक्यूएल संग्रहीत प्रक्रिया और संग्रहीत फ़ंक्शन के बीच क्या अंतर है?
A
Functions are always faster than procedures कार्य हमेशा प्रक्रियाओं से तेज़ होते हैं
B
Procedures can return multiple values; functions cannot return anything प्रक्रियाएं एकाधिक मान लौटा सकती हैं; फ़ंक्शंस कुछ भी वापस नहीं कर सकते
C
Stored procedure: a named block that executes logic and may return values via OUT/IN OUT parameters called with EXECUTE/CALL cannot be used in SQL expressions. Stored function: MUST return a single value via RETURN can be called from within SQL expressions (SELECT WHERE) and is side-effect restricted in SQL contexts संग्रहीत प्रक्रिया: एक नामित ब्लॉक जो तर्क निष्पादित करता है और EXECUTE/CALL के साथ बुलाए गए OUT/IN OUT पैरामीटर के माध्यम से मान लौटा सकता है, SQL अभिव्यक्तियों में उपयोग नहीं किया जा सकता है। संग्रहीत फ़ंक्शन: RETURN के माध्यम से एक एकल मान लौटाना होगा, इसे SQL अभिव्यक्तियों के भीतर से कॉल किया जा सकता है (SELECT WHERE) और SQL संदर्भों में साइड-इफ़ेक्ट प्रतिबंधित है
D
Functions are compiled; procedures are interpreted फ़ंक्शन संकलित हैं; प्रक्रियाओं की व्याख्या की जाती है
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) Procedure: EXEC my_proc(param); Can have IN, OUT, IN OUT params. No RETURN value (returns via OUT params). Cannot use in SELECT. Function: val := my_func(param) or SELECT my_func(col) FROM t. Must have RETURN type and RETURN statement. In Oracle, functions called from SQL must not modify tables.
व्याख्या (हिन्दी) प्रक्रिया: EXEC my_proc(param); IN, OUT, IN OUT पैरामीटर हो सकते हैं। कोई रिटर्न मान नहीं (आउट पैरामीटर के माध्यम से रिटर्न)। SELECT में उपयोग नहीं किया जा सकता. फ़ंक्शन: val := my_func(param) या t से my_func(col) चुनें। रिटर्न प्रकार और रिटर्न विवरण होना चाहिए। Oracle में, SQL से बुलाए गए फ़ंक्शंस को तालिकाओं को संशोधित नहीं करना चाहिए।
1763
EN + हिं Easy
GB What is PRAGMA EXCEPTION_INIT in PL/SQL?
IN PL/SQL में PRAGMA EXCEPTION_INIT क्या है?
A
A pragma that initializes all exceptions to NULL एक प्राग्मा जो सभी अपवादों को NULL में प्रारंभ करता है
B
A pragma for performance optimization प्रदर्शन अनुकूलन के लिए एक व्यावहारिकता
C
A compiler directive that associates a user-defined exception name with an Oracle error number allowing you to catch specific Oracle errors by name rather than using WHEN OTHERS and checking SQLCODE एक कंपाइलर निर्देश जो उपयोगकर्ता-परिभाषित अपवाद नाम को Oracle त्रुटि संख्या के साथ जोड़ता है, जिससे आप WHEN OTHERS का उपयोग करने और SQLCODE की जाँच करने के बजाय विशिष्ट Oracle त्रुटियों को नाम से पकड़ने की अनुमति देते हैं।
D
A pragma for defining new exception types नए अपवाद प्रकारों को परिभाषित करने के लिए एक व्यावहारिक पद्धति
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) PRAGMA EXCEPTION_INIT(e_null_insert, -1400): associates name e_null_insert with ORA-01400 (cannot insert NULL). Then: EXCEPTION WHEN e_null_insert THEN gives named readable exception handling instead of WHEN OTHERS THEN IF SQLCODE=-1400. Makes code more readable and maintainable.
व्याख्या (हिन्दी) PRAGMA EXCEPTION_INIT(e_null_insert, -1400): नाम e_null_insert को ORA-01400 के साथ जोड़ता है (NULL नहीं डाल सकता)। तब: अपवाद जब e_null_insert तब SQLCODE=-1400 होने पर अन्य के बजाय पठनीय अपवाद हैंडलिंग नाम देता है। कोड को अधिक पठनीय और रखरखाव योग्य बनाता है।
1764
EN + हिं Medium
GB What is the difference between implicit cursor and explicit cursor in PL/SQL?
IN पीएल/एसक्यूएल में अंतर्निहित कर्सर और स्पष्ट कर्सर के बीच क्या अंतर है?
A
Implicit cursors support multiple rows; explicit support single rows अंतर्निहित कर्सर एकाधिक पंक्तियों का समर्थन करते हैं; स्पष्ट समर्थन एकल पंक्तियाँ
B
Explicit cursors are always better than implicit स्पष्ट अभिशाप हमेशा अंतर्निहित से बेहतर होते हैं
C
Explicit cursors are read-only; implicit cursors support DML स्पष्ट कर्सर केवल पढ़ने के लिए होते हैं; अंतर्निहित कर्सर डीएमएल का समर्थन करते हैं
D
Implicit cursor: automatically created by PL/SQL for single-row SELECT INTO or DML statements (attributes: SQL%ROWCOUNT SQL%FOUND SQL%NOTFOUND SQL%ISOPEN). Explicit cursor: developer-declared named cursor for multi-row queries with full control over OPEN FETCH CLOSE lifecycle निहित कर्सर: एकल-पंक्ति SELECT INTO या DML कथनों के लिए PL/SQL द्वारा स्वचालित रूप से बनाया गया (विशेषताएँ: SQL%ROWCOUNT SQL%FOUND SQL%NOTFOUND SQL%ISOPEN)। स्पष्ट कर्सर: ओपन फ़ेच क्लोज़ जीवनचक्र पर पूर्ण नियंत्रण के साथ बहु-पंक्ति प्रश्नों के लिए डेवलपर द्वारा घोषित नामित कर्सर
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) Implicit: SELECT col INTO var FROM t WHERE id=x (auto-managed, raises NO_DATA_FOUND or TOO_MANY_ROWS). SQL%ROWCOUNT after UPDATE/DELETE. Explicit: CURSOR c IS SELECT * FROM t; OPEN c; LOOP FETCH c INTO rec; EXIT WHEN c%NOTFOUND; ... END LOOP; CLOSE c; Full control, multi-row processing.
व्याख्या (हिन्दी) अंतर्निहित: SELECT col INTO var FROM t WHERE id=x (स्वचालित रूप से प्रबंधित, NO_DATA_FOUND या TOO_MANY_ROWS बढ़ाता है)। अपडेट/डिलीट के बाद SQL%ROWCOUNT। स्पष्ट: कर्सर c चयन है * t से; खुला ग; लूप फ़ेच सी इनटू रिक; जब सी%नोट नहीं मिला तो बाहर निकलें; ...अंत लूप; बंद करें सी; पूर्ण नियंत्रण, बहु-पंक्ति प्रसंस्करण।
1765
EN + हिं Hard
GB What is BULK COLLECT and FORALL in PL/SQL and how do they improve performance?
IN PL/SQL में BULK COLLECT और FORALL क्या हैं और वे प्रदर्शन में सुधार कैसे करते हैं?
A
BULK COLLECT: fetches multiple rows from a cursor into a collection in a single context switch. FORALL: executes a DML statement for all elements of a collection in a single context switch. Both minimize expensive PL/SQL-to-SQL engine context switches थोक संग्रह: एक संदर्भ स्विच में कर्सर से कई पंक्तियों को एक संग्रह में लाता है। FORALL: एकल संदर्भ स्विच में संग्रह के सभी तत्वों के लिए DML कथन निष्पादित करता है। दोनों महंगे पीएल/एसक्यूएल-टू-एसक्यूएल इंजन संदर्भ स्विच को कम करते हैं
B
Features for parallel query execution समानांतर क्वेरी निष्पादन के लिए सुविधाएँ
C
Features for handling encrypted data एन्क्रिप्टेड डेटा को संभालने की सुविधाएँ
D
Features for managing large text data बड़े टेक्स्ट डेटा को प्रबंधित करने की सुविधाएँ
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) Context switch overhead: each PL/SQL FETCH or DML in a loop = one switch between PL/SQL and SQL engines. For 10,000 rows: 10,000 switches. BULK COLLECT: fetch all rows in one switch. FORALL: execute 10,000 DML in one switch. 100-1000x faster for bulk operations.
व्याख्या (हिन्दी) संदर्भ स्विच ओवरहेड: एक लूप में प्रत्येक PL/SQL FETCH या DML = PL/SQL और SQL इंजन के बीच एक स्विच। 10,000 पंक्तियों के लिए: 10,000 स्विच। थोक संग्रहण: सभी पंक्तियों को एक स्विच में लाएँ। FORALL: एक स्विच में 10,000 डीएमएल निष्पादित करें। थोक संचालन के लिए 100-1000 गुना तेज।
1766
EN + हिं Easy
GB What is a REF CURSOR in PL/SQL and what is its advantage over static cursors?
IN PL/SQL में REF कर्सर क्या है और स्थिर कर्सर की तुलना में इसका क्या लाभ है?
A
A pointer to a query result set that can be passed as a parameter between programs or returned from a function; advantage: the query can be determined at runtime (dynamic) and the cursor can be returned to a calling program (Java/Python) as a result set किसी क्वेरी परिणाम सेट के लिए एक सूचक जिसे प्रोग्रामों के बीच एक पैरामीटर के रूप में पारित किया जा सकता है या किसी फ़ंक्शन से लौटाया जा सकता है; लाभ: क्वेरी को रनटाइम (डायनामिक) पर निर्धारित किया जा सकता है और परिणाम सेट के रूप में कर्सर को कॉलिंग प्रोग्राम (जावा/पायथन) में वापस किया जा सकता है
B
A cursor that references other cursors एक कर्सर जो अन्य कर्सरों को संदर्भित करता है
C
A read-only cursor used only for reporting केवल पढ़ने योग्य कर्सर का उपयोग केवल रिपोर्टिंग के लिए किया जाता है
D
A reference to a static cursor स्थिर कर्सर का संदर्भ
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) REF CURSOR: TYPE t_ref IS REF CURSOR; or use SYS_REFCURSOR. PROCEDURE get_data(p_cursor OUT SYS_REFCURSOR) IS BEGIN OPEN p_cursor FOR SELECT * FROM emp; END; Java: CallableStatement.registerOutParameter with cursor type. Used for: returning result sets from stored procs, dynamic SQL results, multiple result sets.
व्याख्या (हिन्दी) रेफरी कर्सर: प्रकार t_ref रेफरी कर्सर है; या SYS_REFCURSOR का उपयोग करें। प्रक्रिया get_data(p_cursor OUT SYS_REFCURSOR) चयन के लिए p_cursor को खोलना शुरू कर देती है * Emp से; अंत; जावा: कर्सर प्रकार के साथ CallableStatement.registerOutParameter। इनके लिए उपयोग किया जाता है: संग्रहित प्रोसेस से परिणाम सेट लौटाना, गतिशील SQL परिणाम, एकाधिक परिणाम सेट।
1767
EN + हिं Easy
GB What is EXECUTE IMMEDIATE in PL/SQL and when is it used?
IN PL/SQL में EXECUTE IMMEDIATE क्या है और इसका उपयोग कब किया जाता है?
A
Used to execute dynamic SQL strings built and executed at runtime allowing PL/SQL to execute DDL DML with runtime-determined table names/conditions or PL/SQL anonymous blocks not known at compile time रनटाइम पर निर्मित और निष्पादित गतिशील एसक्यूएल स्ट्रिंग्स को निष्पादित करने के लिए उपयोग किया जाता है, जिससे पीएल/एसक्यूएल को रनटाइम-निर्धारित तालिका नाम/शर्तों या पीएल/एसक्यूएल अज्ञात ब्लॉकों के साथ डीडीएल डीएमएल निष्पादित करने की अनुमति मिलती है जो संकलन समय पर ज्ञात नहीं होते हैं।
B
A statement for executing external programs from PL/SQL पीएल/एसक्यूएल से बाहरी प्रोग्राम निष्पादित करने के लिए एक बयान
C
A statement to immediately commit transactions लेन-देन तुरंत करने के लिए एक बयान
D
A statement to bypass transaction management लेन-देन प्रबंधन को बायपास करने के लिए एक बयान
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) EXECUTE IMMEDIATE sql_string USING bind_vars. Use cases: (1) DDL in PL/SQL: EXECUTE IMMEDIATE CREATE TABLE t (id INT). (2) Dynamic table name: EXECUTE IMMEDIATE SELECT * FROM || table_name. (3) Dynamic WHERE clause. Always use bind variables to prevent SQL injection in dynamic SQL.
व्याख्या (हिन्दी) बाइंड_वर्स का उपयोग करके तत्काल sql_string निष्पादित करें। उपयोग के मामले: (1) पीएल/एसक्यूएल में डीडीएल: तुरंत निष्पादित करें टेबल टी बनाएं (आईडी आईएनटी)। (2) गतिशील तालिका का नाम: तत्काल चयन निष्पादित करें * से || तालिका नाम। (3) डायनामिक व्हेयर क्लॉज। डायनेमिक SQL में SQL इंजेक्शन को रोकने के लिए हमेशा बाइंड वेरिएबल का उपयोग करें।
1768
EN + हिं Easy
GB What are PL/SQL collections (Associative Arrays Nested Tables VARRAYs) and how do they differ?
IN PL/SQL संग्रह (एसोसिएटिव एरेज़ नेस्टेड टेबल्स VARRAYs) क्या हैं और वे कैसे भिन्न हैं?
A
Only Associative Arrays can be used in PL/SQL PL/SQL में केवल एसोसिएटिव एरेज़ का उपयोग किया जा सकता है
B
Collections in PL/SQL are identical to SQL arrays पीएल/एसक्यूएल में संग्रह एसक्यूएल सरणी के समान हैं
C
All PL/SQL collections are identical सभी पीएल/एसक्यूएल संग्रह समान हैं
D
Associative Array (INDEX BY): unbounded sparse indexed by PLS_INTEGER or VARCHAR2 exists only in PL/SQL memory. Nested Table: initially dense can have gaps (DELETE) can be stored in database column. VARRAY: fixed maximum size always dense (no gaps) ordered can be stored in database column एसोसिएटिव ऐरे (INDEX BY): PLS_INTEGER या VARCHAR2 द्वारा अनुक्रमित असीमित विरल केवल PL/SQL मेमोरी में मौजूद है। नेस्टेड टेबल: प्रारंभ में घने में अंतराल हो सकता है (हटाएं) डेटाबेस कॉलम में संग्रहीत किया जा सकता है। VARRAY: निश्चित अधिकतम आकार हमेशा सघन (कोई अंतराल नहीं) आदेशित डेटाबेस कॉलम में संग्रहीत किया जा सकता है
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) Associative Array: TYPE t IS TABLE OF VARCHAR2(100) INDEX BY PLS_INTEGER. Best for lookups like a HashMap. Nested Table: TYPE t IS TABLE OF VARCHAR2(100) - stored in DB as column. VARRAY: TYPE t IS VARRAY(10) OF VARCHAR2(100) - fixed max size, ordered. All support BULK COLLECT.
व्याख्या (हिन्दी) एसोसिएटिव ऐरे: टाइप टी PLS_INTEGER द्वारा VARCHAR2(100) इंडेक्स की तालिका है। हैशमैप जैसे लुकअप के लिए सर्वोत्तम। नेस्टेड तालिका: टाइप टी VARCHAR2(100) की तालिका है - कॉलम के रूप में डीबी में संग्रहीत। वैरे: प्रकार टी VARCHAR2(100) का वैरे(10) है - निश्चित अधिकतम आकार, ऑर्डर किया गया। सभी थोक संग्रहण का समर्थन करते हैं।
1769
EN + हिं Easy
GB What is AUTONOMOUS TRANSACTION pragma in PL/SQL?
IN पीएल/एसक्यूएल में स्वायत्त लेनदेन प्राग्मा क्या है?
A
A transaction that bypasses locking mechanisms एक लेनदेन जो लॉकिंग तंत्र को बायपास करता है
B
A transaction that runs in parallel with the main transaction एक लेन-देन जो मुख्य लेन-देन के समानांतर चलता है
C
A transaction that automatically commits on success एक लेनदेन जो सफल होने पर स्वचालित रूप से प्रतिबद्ध होता है
D
A pragma that makes a PL/SQL block run in its own independent transaction separate from the calling transaction - used for: writing audit/log records that persist even if the main transaction rolls back एक प्राग्मा जो पीएल/एसक्यूएल ब्लॉक को कॉलिंग लेनदेन से अलग अपने स्वतंत्र लेनदेन में चलाता है - इसके लिए उपयोग किया जाता है: ऑडिट/लॉग रिकॉर्ड लिखना जो मुख्य लेनदेन वापस आने पर भी जारी रहता है
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) PRAGMA AUTONOMOUS_TRANSACTION: the autonomous block starts its own transaction can COMMIT/ROLLBACK independently of caller. Use case: audit logging - even if main transaction rolls back, the audit record in the autonomous transaction is already committed. Warning: autonomous transactions do not see uncommitted changes of caller.
व्याख्या (हिन्दी) PRAGMA AUTONOMOUS_TRANSACTION: स्वायत्त ब्लॉक अपना स्वयं का लेनदेन शुरू करता है, कॉल करने वाले से स्वतंत्र रूप से कमिट/रोलबैक कर सकता है। उपयोग का मामला: ऑडिट लॉगिंग - भले ही मुख्य लेनदेन वापस आ जाए, स्वायत्त लेनदेन में ऑडिट रिकॉर्ड पहले से ही प्रतिबद्ध है। चेतावनी: स्वायत्त लेन-देन में कॉलर के अप्रतिबद्ध परिवर्तन नहीं दिखते।
1770
EN + हिं Medium
GB What is the difference between statement-level and row-level triggers in PL/SQL?
IN पीएल/एसक्यूएल में स्टेटमेंट-लेवल और रो-लेवल ट्रिगर्स के बीच क्या अंतर है?
A
Statement-level trigger: fires ONCE for the entire DML statement regardless of how many rows are affected (cannot access :NEW/:OLD). Row-level trigger (FOR EACH ROW): fires ONCE for each affected row has access to :NEW (new values) and :OLD (old values) for validation and auditing स्टेटमेंट-लेवल ट्रिगर: पूरे डीएमएल स्टेटमेंट के लिए एक बार सक्रिय होता है, चाहे कितनी भी पंक्तियाँ प्रभावित हों (एक्सेस नहीं कर सकते: NEW/:OLD)। पंक्ति-स्तरीय ट्रिगर (प्रत्येक पंक्ति के लिए): प्रत्येक प्रभावित पंक्ति के लिए एक बार सक्रिय होने पर सत्यापन और ऑडिटिंग के लिए :नए (नए मान) और :OLD (पुराने मान) तक पहुंच होती है।
B
Triggers are identical to stored procedures ट्रिगर संग्रहीत प्रक्रियाओं के समान हैं
C
Triggers automatically call stored procedures ट्रिगर्स स्वचालित रूप से संग्रहीत प्रक्रियाओं को कॉल करते हैं
D
Row-level triggers are always faster than statement-level पंक्ति-स्तर ट्रिगर हमेशा कथन-स्तर से तेज़ होते हैं
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) Statement-level: CREATE TRIGGER trg AFTER UPDATE ON emp BEGIN ... END; fires once even for UPDATE affecting 1000 rows. Row-level: CREATE TRIGGER trg AFTER UPDATE ON emp FOR EACH ROW BEGIN IF :NEW.salary < :OLD.salary THEN RAISE_APPLICATION_ERROR(-20001, Cannot reduce salary); END IF; END;
व्याख्या (हिन्दी) कथन-स्तर: ईएमपी पर अपडेट के बाद ट्रिगर ट्रग बनाएं शुरू...अंत; अद्यतन के लिए भी एक बार सक्रिय होने से 1000 पंक्तियाँ प्रभावित होती हैं। पंक्ति-स्तर: प्रत्येक पंक्ति के लिए ईएमपी पर अपडेट के बाद ट्रिगर टीआरजी बनाएं यदि: नया वेतन <: पुराना वेतन फिर बढ़ाएं_आवेदन_त्रुटि(-20001, वेतन कम नहीं किया जा सकता); अंत यदि; अंत;
1756–1770 of 2982