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
1531
EN + हिं Medium
GB What does CREATE SCHEMA do and how does it relate to CREATE DATABASE?
IN क्रिएट स्कीमा क्या करती है और यह क्रिएट डेटाबेस से कैसे संबंधित है?
A
CREATE SCHEMA creates a temporary database CREATE SCHEMA एक अस्थायी डेटाबेस बनाता है
B
CREATE SCHEMA creates a logical namespace/grouping for database objects within a database; CREATE DATABASE creates an entirely new database instance. In some DBMS (PostgreSQL) SCHEMA is a namespace within a database; in MySQL SCHEMA and DATABASE are synonymous CREATE SCHEMA डेटाबेस के भीतर डेटाबेस ऑब्जेक्ट के लिए एक तार्किक नामस्थान/समूहन बनाता है; CREATE DATABASE एक पूरी तरह से नया डेटाबेस इंस्टेंस बनाता है। कुछ DBMS (PostgreSQL) में SCHEMA एक डेटाबेस के भीतर एक नेमस्पेस है; in MySQL SCHEMA and DATABASE are synonymous
C
CREATE SCHEMA is only for stored procedures; CREATE DATABASE for tables CREATE SCHEMA केवल संग्रहीत प्रक्रियाओं के लिए है; तालिकाओं के लिए डेटाबेस बनाएँ
D
They are always identical operations वे हमेशा समान संचालन होते हैं
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) PostgreSQL: CREATE DATABASE creates a new database cluster; CREATE SCHEMA creates a namespace (schema) within a database. MySQL: CREATE SCHEMA = CREATE DATABASE (synonyms). SQL Server: schemas are namespaces within a database (dbo, sales, hr).
व्याख्या (हिन्दी) PostgreSQL: CREATE DATABASE एक नया डेटाबेस क्लस्टर बनाता है; CREATE SCHEMA डेटाबेस के भीतर एक नेमस्पेस (स्कीमा) बनाता है। MySQL: स्कीमा बनाएं = डेटाबेस बनाएं (समानार्थी)। SQL सर्वर: स्कीमा एक डेटाबेस (डीबीओ, बिक्री, घंटा) के भीतर नामस्थान हैं।
1532
EN + हिं Easy
GB What is the effect of adding a NOT NULL constraint to an existing column that already contains NULL values?
IN किसी मौजूदा कॉलम में NOT NULL बाधा जोड़ने का क्या प्रभाव होता है जिसमें पहले से ही NULL मान शामिल हैं?
A
It automatically replaces NULLs with 0 or empty string यह स्वचालित रूप से NULL को 0 या खाली स्ट्रिंग से बदल देता है
B
The constraint is added but only applies to new rows बाधा जोड़ी गई है लेकिन केवल नई पंक्तियों पर लागू होती है
C
The ALTER TABLE command fails with an error because existing NULLs would violate the constraint - you must first update NULLs to valid values before adding the NOT NULL constraint ALTER TABLE कमांड एक त्रुटि के साथ विफल हो जाता है क्योंकि मौजूदा NULLs बाधा का उल्लंघन करेंगे - आपको NOT NULL बाधा जोड़ने से पहले NULLs को मान्य मानों में अपडेट करना होगा
D
It silently converts NULLs to empty strings यह चुपचाप NULLs को खाली स्ट्रिंग्स में बदल देता है
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) Attempting to ALTER TABLE...MODIFY col INT NOT NULL when column has existing NULLs fails in most DBMS with Cannot be null error. Solution: first UPDATE table SET col=default_value WHERE col IS NULL, then add NOT NULL constraint.
व्याख्या (हिन्दी) तालिका में परिवर्तन करने का प्रयास... कॉलम में मौजूदा शून्य होने पर कॉलम को संशोधित करें INT NULL अधिकांश DBMS में शून्य नहीं हो सकता त्रुटि के साथ विफल हो जाता है। समाधान: पहले अद्यतन तालिका SET col=default_value जहाँ col शून्य है, फिर NOT NULL बाधा जोड़ें।
1533
EN + हिं Easy
GB What does the RESTRICT option do in DROP TABLE RESTRICT?
IN ड्रॉप टेबल रेस्ट्रिक्ट में रेस्ट्रिक्ट विकल्प क्या करता है?
A
It restricts which users can drop the table यह प्रतिबंधित करता है कि कौन से उपयोगकर्ता तालिका को गिरा सकते हैं
B
It creates a restricted access table after dropping यह ड्रॉप करने के बाद एक प्रतिबंधित एक्सेस टेबल बनाता है
C
It restricts the number of rows deleted from the table यह तालिका से हटाई गई पंक्तियों की संख्या को प्रतिबंधित करता है
D
It prevents dropping the table if any other database objects depend on it (views, foreign keys, triggers) requiring dependencies to be removed first यदि कोई अन्य डेटाबेस ऑब्जेक्ट इस पर निर्भर करता है (दृश्य, विदेशी कुंजी, ट्रिगर) तो यह तालिका को छोड़ने से रोकता है, जिसके लिए पहले निर्भरता को हटाने की आवश्यकता होती है
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) DROP TABLE name RESTRICT: fails if any dependent objects exist (views referencing the table, FK constraints in other tables referencing this one, etc.). DROP TABLE name CASCADE: drops the table AND automatically drops all dependent objects. Most DBMS default to RESTRICT behavior.
व्याख्या (हिन्दी) ड्रॉप टेबल नाम प्रतिबंधित: यदि कोई आश्रित ऑब्जेक्ट मौजूद है तो विफल हो जाता है (तालिका को संदर्भित करने वाले दृश्य, इसे संदर्भित करने वाली अन्य तालिकाओं में एफके बाधाएं, आदि)। ड्रॉप टेबल नाम कैस्केड: टेबल को ड्रॉप करता है और स्वचालित रूप से सभी आश्रित वस्तुओं को ड्रॉप करता है। अधिकांश DBMS व्यवहार को प्रतिबंधित करने के लिए डिफ़ॉल्ट होते हैं।
1534
EN + हिं Medium
GB What is a partitioned table in DDL and how is RANGE partitioning defined?
IN DDL में विभाजित तालिका क्या है और RANGE विभाजन को कैसे परिभाषित किया जाता है?
A
A table with multiple primary keys partitioning the data डेटा को विभाजित करने वाली एकाधिक प्राथमिक कुंजियों वाली एक तालिका
B
A table replicated across multiple servers एकाधिक सर्वरों पर दोहराई गई एक तालिका
C
A table divided into smaller physical storage units (partitions) based on partition key values; RANGE partitioning: each partition holds rows where partition key falls within specified ranges विभाजन कुंजी मानों के आधार पर छोटी भौतिक भंडारण इकाइयों (विभाजन) में विभाजित एक तालिका; रेंज विभाजन: प्रत्येक विभाजन में पंक्तियाँ होती हैं जहाँ विभाजन कुंजी निर्दिष्ट सीमाओं के भीतर आती है
D
A table split across multiple databases एक तालिका कई डेटाबेस में विभाजित है
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) RANGE partitioning: rows assigned to partitions based on value ranges. CREATE TABLE orders (...) PARTITION BY RANGE (YEAR(order_date)) (PARTITION p2020 VALUES LESS THAN (2021), PARTITION p2021 VALUES LESS THAN (2022)...). Enables partition pruning - queries only scan relevant partitions.
व्याख्या (हिन्दी) रेंज विभाजन: मान श्रेणियों के आधार पर विभाजनों को पंक्तियाँ सौंपी गईं। तालिका आदेश बनाएं (...) श्रेणी के अनुसार विभाजन (वर्ष(ऑर्डर_दिनांक)) (विभाजन p2020 मान (2021) से कम, विभाजन p2021 मान (2022)...) से कम। विभाजन काट-छाँट सक्षम करता है - क्वेरीज़ केवल प्रासंगिक विभाजनों को स्कैन करती हैं।
1535
EN + हिं Medium
GB What is the SQL CREATE TYPE statement used for in object-relational DBMS?
IN ऑब्जेक्ट-रिलेशनल डीबीएमएस में SQL क्रिएट टाइप स्टेटमेंट का उपयोग किस लिए किया जाता है?
A
To define user-defined types (UDTs) including structured types with attributes and methods array types row types and enum types - extending the built-in type system विशेषताओं और विधियों के साथ संरचित प्रकारों सहित उपयोगकर्ता-परिभाषित प्रकारों (यूडीटी) को परिभाषित करने के लिए, सरणी प्रकार, पंक्ति प्रकार और एनम प्रकार - अंतर्निहित प्रकार प्रणाली का विस्तार करना
B
To define a type of database user role एक प्रकार की डेटाबेस उपयोगकर्ता भूमिका को परिभाषित करने के लिए
C
To create a data type constraint डेटा प्रकार बाधा उत्पन्न करने के लिए
D
To create a new table with a specific structure type एक विशिष्ट संरचना प्रकार के साथ एक नई तालिका बनाने के लिए
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) CREATE TYPE allows: user-defined structured types (objects with attributes+methods), array types, multiset types, row types, enum types. E.g., CREATE TYPE Address AS OBJECT (street VARCHAR(100), city VARCHAR(50)). Then use as column type in tables.
व्याख्या (हिन्दी) क्रिएट प्रकार की अनुमति देता है: उपयोगकर्ता-परिभाषित संरचित प्रकार (विशेषताओं + विधियों के साथ ऑब्जेक्ट), सरणी प्रकार, मल्टीसेट प्रकार, पंक्ति प्रकार, एनम प्रकार। उदाहरण के लिए, ऑब्जेक्ट के रूप में टाइप एड्रेस बनाएं (स्ट्रीट वर्चर(100), सिटी वर्चर(50))। फिर तालिकाओं में कॉलम प्रकार के रूप में उपयोग करें।
1536
EN + हिं Easy
GB What is DDL replication in the context of database replication architecture?
IN डेटाबेस प्रतिकृति आर्किटेक्चर के संदर्भ में डीडीएल प्रतिकृति क्या है?
A
Replicating the data dictionary tables डेटा शब्दकोश तालिकाओं की प्रतिकृति बनाना
B
A type of replication using DDL statements only केवल DDL कथनों का उपयोग करके एक प्रकार की प्रतिकृति
C
Replicating structural changes (CREATE TABLE, ALTER TABLE, DROP INDEX, etc.) from primary to replica databases ensuring schema stays synchronized - not all replication solutions support DDL replication प्राथमिक से प्रतिकृति डेटाबेस में संरचनात्मक परिवर्तनों (तालिका बनाएं, तालिका बदलें, ड्रॉप इंडेक्स इत्यादि) की प्रतिलिपि बनाना सुनिश्चित करें कि स्कीमा सिंक्रनाइज़ रहे - सभी प्रतिकृति समाधान डीडीएल प्रतिकृति का समर्थन नहीं करते हैं
D
Replicating only data changes प्रतिलिपि बनाने से केवल डेटा में परिवर्तन होता है
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) DDL replication: propagating schema changes to replicas. Challenge: ALTER TABLE on large tables may lock the primary; DDL replication must synchronize without blocking replicas. Some solutions use online schema change tools (pt-online-schema-change, gh-ost) to avoid downtime.
व्याख्या (हिन्दी) डीडीएल प्रतिकृति: स्कीमा परिवर्तनों को प्रतिकृतियों में प्रसारित करना। चुनौती: बड़ी तालिकाओं पर परिवर्तन तालिका प्राथमिक को लॉक कर सकती है; डीडीएल प्रतिकृति को प्रतिकृतियों को अवरुद्ध किए बिना सिंक्रनाइज़ करना होगा। कुछ समाधान डाउनटाइम से बचने के लिए ऑनलाइन स्कीमा परिवर्तन टूल (पीटी-ऑनलाइन-स्कीमा-चेंज, जीएच-ओस्ट) का उपयोग करते हैं।
1537
EN + हिं Medium
GB What is the purpose of CREATE SEQUENCE in SQL and how does it differ from AUTO_INCREMENT?
IN SQL में CREATE SEQUENCE का उद्देश्य क्या है और यह AUTO_INCREMENT से किस प्रकार भिन्न है?
A
AUTO_INCREMENT is standard SQL; SEQUENCE is proprietary AUTO_INCREMENT मानक SQL है; अनुक्रम मालिकाना है
B
They are functionally identical in all DBMS वे सभी DBMS में कार्यात्मक रूप से समान हैं
C
SEQUENCE is only for negative numbers; AUTO_INCREMENT for positive अनुक्रम केवल ऋणात्मक संख्याओं के लिए है; सकारात्मक के लिए AUTO_INCREMENT
D
SEQUENCE is a database object that generates unique sequential numbers independently of any table - can be used across multiple tables allows fine-grained control (INCREMENT BY, START WITH, MINVALUE, MAXVALUE, CYCLE); AUTO_INCREMENT is a column property tied to a specific table SEQUENCE एक डेटाबेस ऑब्जेक्ट है जो किसी भी तालिका से स्वतंत्र रूप से अद्वितीय अनुक्रमिक संख्याएँ उत्पन्न करता है - कई तालिकाओं में उपयोग किया जा सकता है जो बारीक नियंत्रण की अनुमति देता है (वृद्धि द्वारा, प्रारंभ के साथ, न्यूनतम मूल्य, अधिकतम मूल्य, चक्र); AUTO_INCREMENT एक विशिष्ट तालिका से जुड़ी एक स्तंभ संपत्ति है
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) SEQUENCE: standalone object, portable (standard SQL), can be shared across tables, supports CYCLE, INCREMENT BY, CACHE. AUTO_INCREMENT (MySQL)/SERIAL (PostgreSQL)/IDENTITY (SQL Server): column property, auto-increments per table, simpler but less flexible.
व्याख्या (हिन्दी) अनुक्रम: स्टैंडअलोन ऑब्जेक्ट, पोर्टेबल (मानक SQL), तालिकाओं में साझा किया जा सकता है, CYCLE, INCREMENT BY, CACHE का समर्थन करता है। AUTO_INCREMENT (MySQL)/SERIAL (PostgreSQL)/IDENTITY (SQL सर्वर): कॉलम प्रॉपर्टी, प्रति टेबल ऑटो-इंक्रीमेंट, सरल लेकिन कम लचीला।
1538
EN + हिं Medium
GB What happens when you execute ALTER TABLE ADD COLUMN col INT DEFAULT 5 NOT NULL on a table with millions of existing rows?
IN क्या होता है जब आप लाखों मौजूदा पंक्तियों वाली तालिका पर ALTER TABLE ADD COLUMN col INT Default 5 NOT NULL निष्पादित करते हैं?
A
The DEFAULT value is only applied to new rows डिफ़ॉल्ट मान केवल नई पंक्तियों पर लागू होता है
B
The column is added instantly in all DBMS सभी DBMS में कॉलम तुरन्त जुड़ जाता है
C
In most DBMS this requires rewriting the entire table to add the column value to every row (table-level lock, long operation). PostgreSQL 11+ handles DEFAULT WITHOUT NULL as instant; MySQL 8.0+ supports instant ADD COLUMN for some cases अधिकांश DBMS में प्रत्येक पंक्ति में कॉलम मान जोड़ने के लिए संपूर्ण तालिका को फिर से लिखने की आवश्यकता होती है (तालिका-स्तरीय लॉक, लंबा ऑपरेशन)। PostgreSQL 11+ तत्काल के रूप में शून्य के बिना डिफ़ॉल्ट को संभालता है; MySQL 8.0+ कुछ मामलों के लिए तत्काल कॉलम जोड़ें का समर्थन करता है
D
The operation fails if the table has data यदि तालिका में डेटा है तो ऑपरेशन विफल हो जाता है
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) ADD NOT NULL column with DEFAULT on large tables: traditionally requires full table rewrite (each existing row gets the default value). Modern DBMS improvements: PostgreSQL 11+ stores DEFAULT separately (no rewrite for constant defaults). MySQL 8.0+ ALGORITHM=INSTANT for some column additions.
व्याख्या (हिन्दी) बड़ी तालिकाओं पर डिफ़ॉल्ट के साथ शून्य कॉलम जोड़ें: परंपरागत रूप से पूर्ण तालिका को फिर से लिखने की आवश्यकता होती है (प्रत्येक मौजूदा पंक्ति को डिफ़ॉल्ट मान मिलता है)। आधुनिक DBMS सुधार: PostgreSQL 11+ डिफ़ॉल्ट को अलग से संग्रहीत करता है (निरंतर डिफ़ॉल्ट के लिए कोई पुनर्लेखन नहीं)। कुछ कॉलम परिवर्धन के लिए MySQL 8.0+ एल्गोरिदम=तत्काल।
1539
EN + हिं Easy
GB What is CREATE TEMPORARY TABLE and what is its scope?
IN क्रिएट टेम्परेरी टेबल क्या है और इसका दायरा क्या है?
A
Creates a table that is read-only एक तालिका बनाता है जो केवल पढ़ने योग्य है
B
Creates a table that is shared across all sessions but deleted after 24 hours एक तालिका बनाता है जिसे सभी सत्रों में साझा किया जाता है लेकिन 24 घंटों के बाद हटा दिया जाता है
C
Creates a table in a temporary schema visible to all users सभी उपयोगकर्ताओं के लिए दृश्यमान एक अस्थायी स्कीमा में एक तालिका बनाता है
D
Creates a table that is visible only to the current session and is automatically dropped when the session ends or connection closes एक तालिका बनाता है जो केवल वर्तमान सत्र के लिए दृश्यमान होती है और सत्र समाप्त होने या कनेक्शन बंद होने पर स्वचालित रूप से हटा दी जाती है
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) Temporary tables: session-scoped, visible only to the creating session (other sessions cannot see it), automatically dropped on session end. Useful for: storing intermediate results, breaking complex queries into steps, avoiding repeated subquery execution.
व्याख्या (हिन्दी) अस्थायी तालिकाएँ: सत्र-क्षेत्र, केवल निर्माण सत्र के लिए दृश्यमान (अन्य सत्र इसे नहीं देख सकते), सत्र के अंत में स्वचालित रूप से हटा दी जाती हैं। इसके लिए उपयोगी: मध्यवर्ती परिणामों को संग्रहीत करना, जटिल प्रश्नों को चरणों में तोड़ना, बार-बार सबक्वेरी निष्पादन से बचना।
1540
EN + हिं Medium
GB What is the purpose of GRANT and REVOKE statements in SQL and which classification do they fall under?
IN SQL में GRANT और REVOKE स्टेटमेंट का उद्देश्य क्या है और वे किस वर्गीकरण के अंतर्गत आते हैं?
A
They are DDL statements for schema management वे स्कीमा प्रबंधन के लिए डीडीएल स्टेटमेंट हैं
B
They are DML statements for data manipulation वे डेटा हेरफेर के लिए डीएमएल स्टेटमेंट हैं
C
They are DQL statements for querying data वे डेटा को क्वेरी करने के लिए DQL स्टेटमेंट हैं
D
They are DCL (Data Control Language) statements - GRANT gives specific privileges (SELECT, INSERT, UPDATE, DELETE, EXECUTE) to users/roles on database objects; REVOKE removes those privileges वे डीसीएल (डेटा कंट्रोल लैंग्वेज) स्टेटमेंट हैं - ग्रांट डेटाबेस ऑब्जेक्ट्स पर उपयोगकर्ताओं/भूमिकाओं को विशिष्ट विशेषाधिकार (चयन, सम्मिलित करें, अपडेट करें, हटाएं, निष्पादित करें) देता है; REVOKE उन विशेषाधिकारों को हटा देता है
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) DCL (Data Control Language): GRANT and REVOKE manage access control. GRANT SELECT ON employees TO analyst_role. REVOKE INSERT ON employees FROM contractor. Privileges can be object-level (table, column, view, function), system-level, or role-based.
व्याख्या (हिन्दी) डीसीएल (डेटा नियंत्रण भाषा): अनुदान और निरस्त अभिगम नियंत्रण का प्रबंधन करते हैं। विश्लेषक_भूमिका के लिए कर्मचारियों पर अनुदान चयन। ठेकेदार से कर्मचारियों पर इंसर्ट रद्द करें। विशेषाधिकार वस्तु-स्तर (तालिका, स्तंभ, दृश्य, फ़ंक्शन), सिस्टम-स्तर, या भूमिका-आधारित हो सकते हैं।
1541
EN + हिं Easy
GB What is the SQL standard way to add a FOREIGN KEY to an existing table?
IN किसी मौजूदा तालिका में विदेशी कुंजी जोड़ने का SQL मानक तरीका क्या है?
A
FOREIGN KEY cannot be added to existing tables only during CREATE TABLE केवल CREATE TABLE के दौरान विदेशी कुंजी को मौजूदा तालिकाओं में नहीं जोड़ा जा सकता है
B
ALTER TABLE child ADD COLUMN parent_id REFERENCES parent तालिका बदलें चाइल्ड कॉलम जोड़ें पैरेंट_आईडी संदर्भ पैरेंट
C
ALTER TABLE child SET FOREIGN KEY = parent_col परिवर्तन तालिका चाइल्ड सेट विदेशी कुंजी =parent_col
D
ALTER TABLE child ADD CONSTRAINT fk_name FOREIGN KEY (child_col) REFERENCES parent_table(parent_col) ON DELETE CASCADE ON UPDATE CASCADE तालिका में परिवर्तन करने वाले बच्चे के लिए बाधा जोड़ें fk_name विदेशी कुंजी (child_col) संदर्भ पैरेंट_टेबल (parent_col) अद्यतन कैस्केड पर कैस्केड हटाएं
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) Syntax: ALTER TABLE orders ADD CONSTRAINT fk_customer FOREIGN KEY (customer_id) REFERENCES customers(id) ON DELETE RESTRICT ON UPDATE CASCADE. This adds the FK constraint, verifies existing data conforms, and enforces referential integrity going forward.
व्याख्या (हिन्दी) सिंटैक्स: परिवर्तन तालिका आदेश अद्यतन कैस्केड पर हटाएं प्रतिबंध पर बाधा एफके_ग्राहक विदेशी कुंजी (ग्राहक_आईडी) संदर्भ ग्राहक (आईडी) जोड़ें। यह एफके बाधा जोड़ता है, मौजूदा डेटा अनुरूपता को सत्यापित करता है, और आगे बढ़ने वाली संदर्भात्मक अखंडता को लागू करता है।
1542
EN + हिं Medium
GB What is online schema change (OSC) and why is it needed?
IN ऑनलाइन स्कीमा परिवर्तन (ओएससी) क्या है और इसकी आवश्यकता क्यों है?
A
A technique/tool that allows schema modifications on large production tables without long table locks or downtime typically by creating a shadow table copying data incrementally and atomically swapping the tables एक तकनीक/उपकरण जो लंबे टेबल लॉक या डाउनटाइम के बिना बड़ी उत्पादन तालिकाओं पर स्कीमा संशोधन की अनुमति देता है, आमतौर पर एक छाया तालिका बनाकर डेटा को वृद्धिशील रूप से कॉपी करता है और तालिकाओं को परमाणु रूप से स्वैप करता है।
B
A standard SQL feature for non-locking DDL नॉन-लॉकिंग DDL के लिए एक मानक SQL सुविधा
C
A tool for changing schemas via a web browser वेब ब्राउज़र के माध्यम से स्कीमा बदलने के लिए एक उपकरण
D
A method for replicating schema changes across distributed databases वितरित डेटाबेस में स्कीमा परिवर्तनों की प्रतिकृति बनाने की एक विधि
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) OSC tools (pt-online-schema-change, gh-ost): create a new table with desired schema, copy data in chunks while capturing ongoing changes (via triggers or binlog), then atomically rename new table to replace old. Avoids long table locks that would block production traffic.
व्याख्या (हिन्दी) ओएससी उपकरण (पीटी-ऑनलाइन-स्कीमा-चेंज, जीएच-ओस्ट): वांछित स्कीमा के साथ एक नई तालिका बनाएं, चल रहे परिवर्तनों (ट्रिगर या बिनलॉग के माध्यम से) को कैप्चर करते समय डेटा को टुकड़ों में कॉपी करें, फिर पुराने को बदलने के लिए परमाणु रूप से नई तालिका का नाम बदलें। लंबे टेबल लॉक से बचें जो उत्पादन ट्रैफ़िक को अवरुद्ध कर देंगे।
1543
EN + हिं Medium
GB What is the purpose of CREATE ASSERTION statement in standard SQL?
IN मानक SQL में CREATE ASSERTION स्टेटमेंट का उद्देश्य क्या है?
A
To assert that a column cannot be NULL यह दावा करने के लिए कि कोई कॉलम NULL नहीं हो सकता
B
A named constraint that can span multiple tables (unlike table-level CHECK constraints which are limited to one table) - allows complex business rules to be defined at the schema level एक नामित बाधा जो कई तालिकाओं तक फैल सकती है (तालिका-स्तरीय CHECK बाधाओं के विपरीत जो एक तालिका तक सीमित हैं) - जटिल व्यावसायिक नियमों को स्कीमा स्तर पर परिभाषित करने की अनुमति देती है
C
To create a trigger that asserts conditions एक ट्रिगर बनाने के लिए जो शर्तों पर जोर देता है
D
To create database assertions/documentation डेटाबेस दावे/दस्तावेज़ीकरण बनाने के लिए
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) CREATE ASSERTION is SQL standard for complex multi-table constraints. CREATE ASSERTION max_salary CHECK (NOT EXISTS (SELECT * FROM Emp WHERE salary > 200000)). Checked after every DML statement. Most DBMS do not fully implement assertions; triggers are used instead.
व्याख्या (हिन्दी) क्रिएट एसेरशन जटिल मल्टी-टेबल बाधाओं के लिए SQL मानक है। दावा अधिकतम वेतन चेक बनाएं (मौजूद नहीं है (* उस कर्मचारी से चुनें जहां वेतन > 200000))। प्रत्येक डीएमएल विवरण के बाद जाँच की गई। अधिकांश DBMS दावे को पूरी तरह से लागू नहीं करते हैं; इसके बजाय ट्रिगर्स का उपयोग किया जाता है।
1544
EN + हिं Easy
GB What does INHERITS clause do in PostgreSQL CREATE TABLE?
IN PostgreSQL क्रिएट टेबल में INHERITS क्लॉज क्या करता है?
A
It inherits column permissions from another table यह किसी अन्य तालिका से कॉलम अनुमतियाँ प्राप्त करता है
B
Creates a child table that inherits all columns and constraints from a parent table with child-specific additional columns - part of PostgreSQLs table inheritance feature for object-relational capabilities एक चाइल्ड टेबल बनाता है जो चाइल्ड-विशिष्ट अतिरिक्त कॉलम के साथ पैरेंट टेबल से सभी कॉलम और बाधाओं को प्राप्त करता है - ऑब्जेक्ट-रिलेशनल क्षमताओं के लिए PostgreSQLs टेबल इनहेरिटेंस सुविधा का हिस्सा
C
It is identical to FOREIGN KEY inheritance यह विदेशी कुंजी वंशानुक्रम के समान है
D
It makes the table read-only inheriting data from parent यह तालिका को माता-पिता से प्राप्त डेटा को केवल पढ़ने योग्य बनाता है
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) PostgreSQL table inheritance: CREATE TABLE employee (salary NUMERIC) INHERITS (person). Employee has all person columns plus salary. Queries on person return data from employee too (unless ONLY keyword used). Useful for partitioning-like patterns, though declarative partitioning is now preferred.
व्याख्या (हिन्दी) PostgreSQL टेबल इनहेरिटेंस: क्रिएट टेबल कर्मचारी (वेतन संख्यात्मक) इनहेरिट्स (व्यक्ति)। कर्मचारी के पास सभी व्यक्ति कॉलम प्लस वेतन हैं। व्यक्ति संबंधी प्रश्न कर्मचारी से भी डेटा लौटाते हैं (जब तक कि केवल कीवर्ड का उपयोग न किया गया हो)। विभाजन जैसे पैटर्न के लिए उपयोगी, हालाँकि अब घोषणात्मक विभाजन को प्राथमिकता दी जाती है।
1545
EN + हिं Medium
GB In DDL what is the difference between CONSTRAINT constraint_name PRIMARY KEY defined at column level vs table level?
IN डीडीएल में कॉलम स्तर बनाम तालिका स्तर पर परिभाषित CONSTRAINT constraint_name PRIMARY KEY के बीच क्या अंतर है?
A
Table-level constraints are always anonymous तालिका-स्तरीय बाधाएँ हमेशा गुमनाम होती हैं
B
Column-level constraints are stronger कॉलम-स्तर की बाधाएँ अधिक मजबूत हैं
C
Column-level: can only define single-column constraints; Table-level: can define single or multi-column (composite) constraints and allows explicit naming at the table level - functionally equivalent for single-column but ONLY table-level syntax works for composite keys कॉलम-स्तर: केवल एकल-स्तंभ बाधाओं को परिभाषित कर सकता है; तालिका-स्तर: एकल या बहु-स्तंभ (मिश्रित) बाधाओं को परिभाषित कर सकता है और तालिका स्तर पर स्पष्ट नामकरण की अनुमति देता है - एकल-स्तंभ के लिए कार्यात्मक रूप से समतुल्य लेकिन समग्र कुंजियों के लिए केवल तालिका-स्तरीय सिंटैक्स काम करता है
D
Table-level constraints apply to the entire table; column-level to one column only तालिका-स्तरीय बाधाएँ संपूर्ण तालिका पर लागू होती हैं; कॉलम-स्तर केवल एक कॉलम तक
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) Column-level: salary NUMERIC CONSTRAINT chk_salary CHECK(salary>0) - only for single column. Table-level: CONSTRAINT pk_emp PRIMARY KEY (emp_id, dept_id) - required for composite keys. For composite PK, FK, or UNIQUE involving multiple columns, MUST use table-level syntax.
व्याख्या (हिन्दी) कॉलम-स्तर: वेतन संख्यात्मक बाधा chk_वेतन चेक(वेतन>0) - केवल एकल कॉलम के लिए। तालिका-स्तर: CONSTRAINT pk_emp प्राथमिक कुंजी (emp_id, dept_id) - समग्र कुंजियों के लिए आवश्यक। अनेक स्तंभों वाले समग्र PK, FK, या UNIQUE के लिए, तालिका-स्तरीय सिंटैक्स का उपयोग अवश्य करें।
1531–1545 of 2982