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
2086
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)...) से कम। विभाजन काट-छाँट सक्षम करता है - क्वेरीज़ केवल प्रासंगिक विभाजनों को स्कैन करती हैं।
2087
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))। फिर तालिकाओं में कॉलम प्रकार के रूप में उपयोग करें।
2088
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.
व्याख्या (हिन्दी) डीडीएल प्रतिकृति: स्कीमा परिवर्तनों को प्रतिकृतियों में प्रसारित करना। चुनौती: बड़ी तालिकाओं पर परिवर्तन तालिका प्राथमिक को लॉक कर सकती है; डीडीएल प्रतिकृति को प्रतिकृतियों को अवरुद्ध किए बिना सिंक्रनाइज़ करना होगा। कुछ समाधान डाउनटाइम से बचने के लिए ऑनलाइन स्कीमा परिवर्तन टूल (पीटी-ऑनलाइन-स्कीमा-चेंज, जीएच-ओस्ट) का उपयोग करते हैं।
2089
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 सर्वर): कॉलम प्रॉपर्टी, प्रति टेबल ऑटो-इंक्रीमेंट, सरल लेकिन कम लचीला।
2090
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+ एल्गोरिदम=तत्काल।
2091
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.
व्याख्या (हिन्दी) अस्थायी तालिकाएँ: सत्र-क्षेत्र, केवल निर्माण सत्र के लिए दृश्यमान (अन्य सत्र इसे नहीं देख सकते), सत्र के अंत में स्वचालित रूप से हटा दी जाती हैं। इसके लिए उपयोगी: मध्यवर्ती परिणामों को संग्रहीत करना, जटिल प्रश्नों को चरणों में तोड़ना, बार-बार सबक्वेरी निष्पादन से बचना।
2092
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.
व्याख्या (हिन्दी) DCL (Data Control Language): GRANT and REVOKE manage access control. GRANT SELECT ON employees TO analyst_role. ठेकेदार से कर्मचारियों पर इंसर्ट रद्द करें। Privileges can be object-level (table, column, view, function), system-level, or role-based.
2093
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.
व्याख्या (हिन्दी) सिंटैक्स: परिवर्तन तालिका आदेश अद्यतन कैस्केड पर हटाएं प्रतिबंध पर बाधा एफके_ग्राहक विदेशी कुंजी (ग्राहक_आईडी) संदर्भ ग्राहक (आईडी) जोड़ें। यह एफके बाधा जोड़ता है, मौजूदा डेटा अनुरूपता को सत्यापित करता है, और आगे बढ़ने वाली संदर्भात्मक अखंडता को लागू करता है।
2094
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.
व्याख्या (हिन्दी) ओएससी उपकरण (पीटी-ऑनलाइन-स्कीमा-चेंज, जीएच-ओस्ट): वांछित स्कीमा के साथ एक नई तालिका बनाएं, चल रहे परिवर्तनों (ट्रिगर या बिनलॉग के माध्यम से) को कैप्चर करते समय डेटा को टुकड़ों में कॉपी करें, फिर पुराने को बदलने के लिए परमाणु रूप से नई तालिका का नाम बदलें। Avoids long table locks that would block production traffic.
2095
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.
व्याख्या (हिन्दी) CREATE ASSERTION is SQL standard for complex multi-table constraints. CREATE ASSERTION max_salary CHECK (NOT EXISTS (SELECT * FROM Emp WHERE salary > 200000)). प्रत्येक डीएमएल विवरण के बाद जाँच की गई। अधिकांश DBMS दावे को पूरी तरह से लागू नहीं करते हैं; इसके बजाय ट्रिगर्स का उपयोग किया जाता है।
2096
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 table inheritance: CREATE TABLE employee (salary NUMERIC) INHERITS (person). कर्मचारी के पास सभी व्यक्ति कॉलम प्लस वेतन हैं। Queries on person return data from employee too (unless ONLY keyword used). Useful for partitioning-like patterns, though declarative partitioning is now preferred.
2097
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 Column-level: can only define single-column constraints; तालिका-स्तर: एकल या बहु-स्तंभ (मिश्रित) बाधाओं को परिभाषित कर सकता है और तालिका स्तर पर स्पष्ट नामकरण की अनुमति देता है - एकल-स्तंभ के लिए कार्यात्मक रूप से समतुल्य लेकिन समग्र कुंजियों के लिए केवल तालिका-स्तरीय सिंटैक्स काम करता है
D
Table-level constraints apply to the entire table; column-level to one column only Table-level constraints apply to the entire table; कॉलम-स्तर केवल एक कॉलम तक
✅ 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 के लिए, तालिका-स्तरीय सिंटैक्स का उपयोग अवश्य करें।
2098
EN + हिं Easy
GB What is the effect of DROP COLUMN on a table with indexes and foreign keys referencing that column?
IN उस कॉलम को संदर्भित करने वाली अनुक्रमणिका और विदेशी कुंजियों वाली तालिका पर DROP COLUMN का क्या प्रभाव होता है?
A
It silently preserves all indexes with NULL values for the dropped column यह गिराए गए कॉलम के लिए NULL मान वाले सभी इंडेक्स को चुपचाप संरक्षित करता है
B
It drops only the column data but keeps the indexes यह केवल कॉलम डेटा छोड़ता है लेकिन इंडेक्स रखता है
C
Most DBMS automatically drop all indexes that include the dropped column and reject the operation if any foreign key references the dropped column (requiring you to drop the FK first) - or CASCADE can be used to drop dependent objects too अधिकांश DBMS स्वचालित रूप से सभी इंडेक्स को हटा देते हैं जिसमें गिरा हुआ कॉलम शामिल होता है और यदि कोई विदेशी कुंजी गिराए गए कॉलम को संदर्भित करता है तो ऑपरेशन को अस्वीकार कर देता है (आपको पहले FK को छोड़ने की आवश्यकता होती है) - या CASCADE का उपयोग निर्भर वस्तुओं को छोड़ने के लिए भी किया जा सकता है
D
It converts the column to NULL before dropping यह ड्रॉप करने से पहले कॉलम को NULL में बदल देता है
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) DROP COLUMN behavior: dependent indexes on that column are automatically dropped. FK constraints referencing the column as a foreign key (in other tables) are typically rejected - you must DROP the FK first or use DROP COLUMN CASCADE (PostgreSQL). CHECK constraints using the column are also dropped.
व्याख्या (हिन्दी) DROP COLUMN behavior: dependent indexes on that column are automatically dropped. कॉलम को एक विदेशी कुंजी (अन्य तालिकाओं में) के रूप में संदर्भित करने वाली FK बाधाओं को आम तौर पर अस्वीकार कर दिया जाता है - आपको पहले FK को छोड़ना होगा या DROP COLUMN CASCADE (PostgreSQL) का उपयोग करना होगा। CHECK constraints using the column are also dropped.
2099
EN + हिं Medium
GB What is the SQL standard DEFAULT clause and how does it interact with INSERT statements?
IN SQL मानक DEFAULT क्लॉज क्या है और यह INSERT कथनों के साथ कैसे इंटरैक्ट करता है?
A
DEFAULT is only for NOT NULL columns डिफ़ॉल्ट केवल शून्य नहीं कॉलम के लिए है
B
DEFAULT only applies to UPDATE statements not INSERT डिफ़ॉल्ट केवल अद्यतन विवरण पर लागू होता है INSERT पर नहीं
C
DEFAULT forces a column to always have the same value डिफ़ॉल्ट किसी कॉलम को हमेशा समान मान रखने के लिए बाध्य करता है
D
DEFAULT clause in CREATE TABLE specifies the value to use when an INSERT statement does not provide a value for that column - can be a literal value a function call (like NOW()) or a sequence reference CREATE TABLE में डिफ़ॉल्ट क्लॉज उस मूल्य को निर्दिष्ट करता है जिसका उपयोग तब किया जाना चाहिए जब एक INSERT कथन उस कॉलम के लिए कोई मान प्रदान नहीं करता है - एक फ़ंक्शन कॉल का शाब्दिक मान हो सकता है (जैसे NOW()) या एक अनुक्रम संदर्भ
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) DEFAULT clause: CREATE TABLE t (created_at TIMESTAMP DEFAULT NOW(), status VARCHAR(20) DEFAULT pending). INSERT INTO t (col1) VALUES (val1): created_at gets NOW(), status gets pending. INSERT INTO t (col1, status) VALUES (val1, DEFAULT): explicitly uses default value.
व्याख्या (हिन्दी) डिफ़ॉल्ट क्लॉज: टेबल बनाएं (अभी टाइमस्टैम्प पर बनाया गया है(), स्थिति VARCHAR(20) डिफ़ॉल्ट लंबित है)। t (col1) मानों (val1) में सम्मिलित करें: create_at को अभी() मिलता है, स्थिति लंबित हो जाती है। टी (कॉल1, स्थिति) मानों में सम्मिलित करें (वैल1, डिफ़ॉल्ट): स्पष्ट रूप से डिफ़ॉल्ट मान का उपयोग करता है।
2100
EN + हिं Medium
GB What is the difference between a UNIQUE constraint and a UNIQUE index in most DBMS?
IN अधिकांश DBMS में UNIQUE बाधा और UNIQUE सूचकांक के बीच क्या अंतर है?
A
Functionally they are equivalent in most DBMS - a UNIQUE constraint is typically implemented internally as a UNIQUE index; the difference is declarative (UNIQUE constraint) vs. explicit (CREATE UNIQUE INDEX) - both prevent duplicate values कार्यात्मक रूप से वे अधिकांश DBMS में समतुल्य हैं - एक UNIQUE बाधा आमतौर पर UNIQUE सूचकांक के रूप में आंतरिक रूप से लागू की जाती है; अंतर घोषणात्मक (अद्वितीय बाधा) बनाम स्पष्ट (अद्वितीय सूचकांक बनाएं) है - दोनों डुप्लिकेट मानों को रोकते हैं
B
UNIQUE index is always faster than UNIQUE constraint UNIQUE सूचकांक हमेशा UNIQUE बाधा से तेज़ होता है
C
UNIQUE constraint allows NULL; UNIQUE index does not अद्वितीय बाधा शून्य की अनुमति देती है; अद्वितीय सूचकांक नहीं है
D
UNIQUE constraint is enforced by the application; UNIQUE index by the DBMS UNIQUE constraint is enforced by the application; डीबीएमएस द्वारा अद्वितीय सूचकांक
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English) In most DBMS (MySQL, PostgreSQL, SQL Server): UNIQUE constraint = UNIQUE index internally. Both prevent duplicate values (with NULL handling varying by DBMS). UNIQUE constraint is the declarative, SQL-standard way. CREATE UNIQUE INDEX is explicit and gives more control over index name, type, and storage options.
व्याख्या (हिन्दी) अधिकांश DBMS (MySQL, PostgreSQL, SQL सर्वर) में: अद्वितीय बाधा = आंतरिक रूप से अद्वितीय सूचकांक। दोनों डुप्लिकेट मानों को रोकते हैं (DBMS द्वारा भिन्न-भिन्न NULL हैंडलिंग के साथ)। अद्वितीय बाधा घोषणात्मक, SQL-मानक तरीका है। क्रिएट यूनिक इंडेक्स स्पष्ट है और इंडेक्स नाम, प्रकार और भंडारण विकल्पों पर अधिक नियंत्रण देता है।
2086–2100 of 2982