Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर में sys.dm_exec_describe_first_result_set कैसे काम करता है

SQL सर्वर में, sys.dm_exec_describe_first_result_set डायनेमिक मैनेजमेंट फ़ंक्शन किसी दिए गए टी-एसक्यूएल स्टेटमेंट या स्टेटमेंट के लिए पहले परिणाम सेट का मेटाडेटा देता है।

यह फ़ंक्शन sp_describe_first_result_set . के समान एल्गोरिदम का उपयोग करता है सिस्टम संग्रहीत प्रक्रिया, और बहुत कुछ वही काम करता है।

यह तीन पैरामीटर स्वीकार करता है, जिनमें से पहला टी-एसक्यूएल स्टेटमेंट है जिसका आप विश्लेषण कर रहे हैं।

सिंटैक्स

वाक्य रचना इस प्रकार है:

sys.dm_exec_describe_first_result_set(@tsql, @params, @include_browse_information)

उदाहरण

प्रदर्शित करने के लिए यहां एक उदाहरण दिया गया है।

SELECT * 
FROM sys.dm_exec_describe_first_result_set(
    N'SELECT * FROM Artists', 
    null, 
    0
);

परिणाम:

+-------------+------------------+------------+---------------+------------------+--------------------+--------------+-------------+---------+------------------------------+----------------+----------------------+--------------------+------------------+--------------------------------+---------------------+---------------------------+-------------------------+-----------------------+-------------------+---------------------+----------------------------+-----------------+-------------------+-----------------+----------------+-----------------+----------------------+-------------------------+-----------------+----------------------+------------------------+----------------------------+--------------------------+------------------------+----------------+------------------+---------------+-----------------+--------------+-------------------+
| is_hidden   | column_ordinal   | name       | is_nullable   | system_type_id   | system_type_name   | max_length   | precision   | scale   | collation_name               | user_type_id   | user_type_database   | user_type_schema   | user_type_name   | assembly_qualified_type_name   | xml_collection_id   | xml_collection_database   | xml_collection_schema   | xml_collection_name   | is_xml_document   | is_case_sensitive   | is_fixed_length_clr_type   | source_server   | source_database   | source_schema   | source_table   | source_column   | is_identity_column   | is_part_of_unique_key   | is_updateable   | is_computed_column   | is_sparse_column_set   | ordinal_in_order_by_list   | order_by_is_descending   | order_by_list_length   | error_number   | error_severity   | error_state   | error_message   | error_type   | error_type_desc   |
|-------------+------------------+------------+---------------+------------------+--------------------+--------------+-------------+---------+------------------------------+----------------+----------------------+--------------------+------------------+--------------------------------+---------------------+---------------------------+-------------------------+-----------------------+-------------------+---------------------+----------------------------+-----------------+-------------------+-----------------+----------------+-----------------+----------------------+-------------------------+-----------------+----------------------+------------------------+----------------------------+--------------------------+------------------------+----------------+------------------+---------------+-----------------+--------------+-------------------|
| 0           | 1                | ArtistId   | 0             | 56               | int                | 4            | 10          | 0       | NULL                         | NULL           | NULL                 | NULL               | NULL             | NULL                           | NULL                | NULL                      | NULL                    | NULL                  | 0                 | 0                   | 0                          | NULL            | NULL              | NULL            | NULL           | NULL            | 1                    | NULL                    | 0               | 0                    | 0                      | NULL                       | NULL                     | NULL                   | NULL           | NULL             | NULL          | NULL            | NULL         | NULL              |
| 0           | 2                | ArtistName | 0             | 231              | nvarchar(255)      | 510          | 0           | 0       | SQL_Latin1_General_CP1_CI_AS | NULL           | NULL                 | NULL               | NULL             | NULL                           | NULL                | NULL                      | NULL                    | NULL                  | 0                 | 0                   | 0                          | NULL            | NULL              | NULL            | NULL           | NULL            | 0                    | NULL                    | 1               | 0                    | 0                      | NULL                       | NULL                     | NULL                   | NULL           | NULL             | NULL          | NULL            | NULL         | NULL              |
| 0           | 3                | ActiveFrom | 1             | 40               | date               | 3            | 10          | 0       | NULL                         | NULL           | NULL                 | NULL               | NULL             | NULL                           | NULL                | NULL                      | NULL                    | NULL                  | 0                 | 0                   | 0                          | NULL            | NULL              | NULL            | NULL           | NULL            | 0                    | NULL                    | 1               | 0                    | 0                      | NULL                       | NULL                     | NULL                   | NULL           | NULL             | NULL          | NULL            | NULL         | NULL              |
+-------------+------------------+------------+---------------+------------------+--------------------+--------------+-------------+---------+------------------------------+----------------+----------------------+--------------------+------------------+--------------------------------+---------------------+---------------------------+-------------------------+-----------------------+-------------------+---------------------+----------------------------+-----------------+-------------------+-----------------+----------------+-----------------+----------------------+-------------------------+-----------------+----------------------+------------------------+----------------------------+--------------------------+------------------------+----------------+------------------+---------------+-----------------+--------------+-------------------+

यह फ़ंक्शन कुछ कॉलम लौटाता है, इसलिए संभवतः आपको उन सभी को देखने के लिए बग़ल में स्क्रॉल करने की आवश्यकता होगी। लौटाए गए प्रत्येक कॉलम की व्याख्या के लिए बेझिझक Microsoft के दस्तावेज़ देखें।

ब्राउज़ मोड

तीसरा तर्क - @include_browse_information - निर्दिष्ट करता है कि क्या अतिरिक्त कुंजी कॉलम और स्रोत तालिका जानकारी लौटाई गई है।

इस तर्क के लिए निम्नलिखित मान स्वीकार किए जाते हैं:

<थ>परिणाम
मान
0 कोई जानकारी वापस नहीं की जाती है।
1 प्रत्येक क्वेरी का विश्लेषण इस तरह किया जाता है जैसे कि उसमें FOR BROWSE . शामिल हो क्वेरी पर विकल्प। यह आधार तालिका नामों को स्रोत स्तंभ जानकारी के रूप में लौटाएगा।
2 प्रत्येक क्वेरी का विश्लेषण इस तरह किया जाता है जैसे कि इसका उपयोग कर्सर को तैयार करने या निष्पादित करने में किया जाएगा। यह दृश्य नामों को स्रोत स्तंभ जानकारी के रूप में लौटाएगा।

नीचे ऐसे उदाहरण दिए गए हैं जो बताते हैं कि इनमें से प्रत्येक मान परिणाम को कैसे प्रभावित करता है।

चीजों को और अधिक संक्षिप्त बनाने के लिए, मैं केवल एक कॉलम वापस करने के लिए अपने टी-एसक्यूएल स्टेटमेंट को संशोधित करूंगा।

मुझे उल्लेख करना चाहिए कि sys.dm_exec_describe_first_result_set के लिए Microsoft दस्तावेज़ केवल दो मानों को संदर्भित करता है:0 और 1 . हालांकि, sp_describe_first_result_set . के लिए दस्तावेज़ीकरण तीन मान निर्दिष्ट करता है:0 , 1 , और 2 , जैसा कि उपरोक्त तालिका में सूचीबद्ध है।

sys.dm_exec_describe_first_result_set . के लिए दस्तावेज़ीकरण यह भी बताता है कि यह उसी एल्गोरिदम का उपयोग करता है जैसे sp_describe_first_result_set

मैंने इस फ़ंक्शन को SQL Server 2017 और SQL Server 2019 दोनों में भी चेक किया है, और यह पैरामीटर वास्तव में एक छोटा है , जो बताता है कि इसे दो से अधिक मूल्यों को स्वीकार करने के लिए डिज़ाइन किया गया था।

किसी भी तरह से, निम्नलिखित उदाहरणों में तीनों मान शामिल हैं।

@include_browse_information = 0

इस उदाहरण में मैंने @include_browse_information . सेट किया है करने के लिए 0

SELECT * 
FROM sys.dm_exec_describe_first_result_set(
    N'SELECT AlbumName FROM vAlbums', 
    null, 
    0
);

परिणाम (ऊर्ध्वाधर आउटपुट का उपयोग करके):

is_hidden                    | 0
column_ordinal               | 1
name                         | AlbumName
is_nullable                  | 0
system_type_id               | 231
system_type_name             | nvarchar(255)
max_length                   | 510
precision                    | 0
scale                        | 0
collation_name               | SQL_Latin1_General_CP1_CI_AS
user_type_id                 | NULL
user_type_database           | NULL
user_type_schema             | NULL
user_type_name               | NULL
assembly_qualified_type_name | NULL
xml_collection_id            | NULL
xml_collection_database      | NULL
xml_collection_schema        | NULL
xml_collection_name          | NULL
is_xml_document              | 0
is_case_sensitive            | 0
is_fixed_length_clr_type     | 0
source_server                | NULL
source_database              | NULL
source_schema                | NULL
source_table                 | NULL
source_column                | NULL
is_identity_column           | 0
is_part_of_unique_key        | NULL
is_updateable                | 1
is_computed_column           | 0
is_sparse_column_set         | 0
ordinal_in_order_by_list     | NULL
order_by_is_descending       | NULL
order_by_list_length         | NULL
error_number                 | NULL
error_severity               | NULL
error_state                  | NULL
error_message                | NULL
error_type                   | NULL
error_type_desc              | NULL

ध्यान दें कि कुछ कॉलम NULL हैं . विशेष रूप से, ध्यान दें कि source_database , source_schema , source_table , और source_column कॉलम हैं NULL

ये कॉलम NULL नहीं होंगे अगले दो उदाहरणों में, फिर भी वे दो अलग-अलग परिणाम देंगे।

@include_browse_information = 1

इस उदाहरण में मैंने @include_browse_information . सेट किया है करने के लिए 1 .

SELECT * 
FROM sys.dm_exec_describe_first_result_set(
    N'SELECT AlbumName FROM vAlbums', 
    null, 
    1
);

@include_browse_information . सेट करना करने के लिए 1 परिणाम लौटाता है जैसे कि इसमें FOR BROWSE . शामिल है क्वेरी पर विकल्प।

हमारे मामले में, यह अब चार पंक्तियों को लौटाता है (आधार तालिकाओं से चार स्तंभों का प्रतिनिधित्व करता है)।

यहाँ चार पंक्तियाँ दी गई हैं:

+-------------+------------------+-----------+---------------+------------------+--------------------+--------------+-------------+---------+------------------------------+----------------+----------------------+--------------------+------------------+--------------------------------+---------------------+---------------------------+-------------------------+-----------------------+-------------------+---------------------+----------------------------+-----------------+-------------------+-----------------+----------------+-----------------+----------------------+-------------------------+-----------------+----------------------+------------------------+----------------------------+--------------------------+------------------------+----------------+------------------+---------------+-----------------+--------------+-------------------+
| is_hidden   | column_ordinal   | name      | is_nullable   | system_type_id   | system_type_name   | max_length   | precision   | scale   | collation_name               | user_type_id   | user_type_database   | user_type_schema   | user_type_name   | assembly_qualified_type_name   | xml_collection_id   | xml_collection_database   | xml_collection_schema   | xml_collection_name   | is_xml_document   | is_case_sensitive   | is_fixed_length_clr_type   | source_server   | source_database   | source_schema   | source_table   | source_column   | is_identity_column   | is_part_of_unique_key   | is_updateable   | is_computed_column   | is_sparse_column_set   | ordinal_in_order_by_list   | order_by_is_descending   | order_by_list_length   | error_number   | error_severity   | error_state   | error_message   | error_type   | error_type_desc   |
|-------------+------------------+-----------+---------------+------------------+--------------------+--------------+-------------+---------+------------------------------+----------------+----------------------+--------------------+------------------+--------------------------------+---------------------+---------------------------+-------------------------+-----------------------+-------------------+---------------------+----------------------------+-----------------+-------------------+-----------------+----------------+-----------------+----------------------+-------------------------+-----------------+----------------------+------------------------+----------------------------+--------------------------+------------------------+----------------+------------------+---------------+-----------------+--------------+-------------------|
| 0           | 1                | AlbumName | 0             | 231              | nvarchar(255)      | 510          | 0           | 0       | SQL_Latin1_General_CP1_CI_AS | NULL           | NULL                 | NULL               | NULL             | NULL                           | NULL                | NULL                      | NULL                    | NULL                  | 0                 | 0                   | 0                          | Homer           | Music             | dbo             | Albums         | AlbumName       | 0                    | 0                       | 1               | 0                    | 0                      | NULL                       | NULL                     | NULL                   | NULL           | NULL             | NULL          | NULL            | NULL         | NULL              |
| 1           | 2                | ArtistId  | 0             | 56               | int                | 4            | 10          | 0       | NULL                         | NULL           | NULL                 | NULL               | NULL             | NULL                           | NULL                | NULL                      | NULL                    | NULL                  | 0                 | 0                   | 0                          | Homer           | Music             | dbo             | Artists        | ArtistId        | 0                    | 1                       | 1               | 0                    | 0                      | NULL                       | NULL                     | NULL                   | NULL           | NULL             | NULL          | NULL            | NULL         | NULL              |
| 1           | 3                | AlbumId   | 0             | 56               | int                | 4            | 10          | 0       | NULL                         | NULL           | NULL                 | NULL               | NULL             | NULL                           | NULL                | NULL                      | NULL                    | NULL                  | 0                 | 0                   | 0                          | Homer           | Music             | dbo             | Albums         | AlbumId         | 0                    | 1                       | 1               | 0                    | 0                      | NULL                       | NULL                     | NULL                   | NULL           | NULL             | NULL          | NULL            | NULL         | NULL              |
| 1           | 4                | GenreId   | 0             | 56               | int                | 4            | 10          | 0       | NULL                         | NULL           | NULL                 | NULL               | NULL             | NULL                           | NULL                | NULL                      | NULL                    | NULL                  | 0                 | 0                   | 0                          | Homer           | Music             | dbo             | Genres         | GenreId         | 0                    | 1                       | 1               | 0                    | 0                      | NULL                       | NULL                     | NULL                   | NULL           | NULL             | NULL          | NULL            | NULL         | NULL              |
+-------------+------------------+-----------+---------------+------------------+--------------------+--------------+-------------+---------+------------------------------+----------------+----------------------+--------------------+------------------+--------------------------------+---------------------+---------------------------+-------------------------+-----------------------+-------------------+---------------------+----------------------------+-----------------+-------------------+-----------------+----------------+-----------------+----------------------+-------------------------+-----------------+----------------------+------------------------+----------------------------+--------------------------+------------------------+----------------+------------------+---------------+-----------------+--------------+-------------------+

तो भले ही मैंने केवल टी-एसक्यूएल क्वेरी में केवल एक कॉलम निर्दिष्ट किया है जिसे मैंने प्रक्रिया में पास किया है, यह चार कॉलम के लिए जानकारी लौटाता है। ये चार कॉलम हैं जिन्हें vAlbums . द्वारा संदर्भित किया गया है देखें।

यदि आप काफी दूर तक स्क्रॉल करते हैं, तो आप देखेंगे कि source_database , source_schema , source_table , और source_column कॉलम अब NULL नहीं हैं . न ही source_server है कॉलम। वे दृश्य द्वारा पूछे गए आधार वस्तुओं के बारे में जानकारी प्रदान करते हैं।

इसे देखना आसान बनाने के लिए, आइए केवल एक पंक्ति (एक कॉलम का प्रतिनिधित्व) पर लंबवत आउटपुट का उपयोग करें:

is_hidden                    | 0
column_ordinal               | 1
name                         | AlbumName
is_nullable                  | 0
system_type_id               | 231
system_type_name             | nvarchar(255)
max_length                   | 510
precision                    | 0
scale                        | 0
collation_name               | SQL_Latin1_General_CP1_CI_AS
user_type_id                 | NULL
user_type_database           | NULL
user_type_schema             | NULL
user_type_name               | NULL
assembly_qualified_type_name | NULL
xml_collection_id            | NULL
xml_collection_database      | NULL
xml_collection_schema        | NULL
xml_collection_name          | NULL
is_xml_document              | 0
is_case_sensitive            | 0
is_fixed_length_clr_type     | 0
source_server                | Homer
source_database              | Music
source_schema                | dbo
source_table                 | Albums
source_column                | AlbumName
is_identity_column           | 0
is_part_of_unique_key        | 0
is_updateable                | 1
is_computed_column           | 0
is_sparse_column_set         | 0
ordinal_in_order_by_list     | NULL
order_by_is_descending       | NULL
order_by_list_length         | NULL
error_number                 | NULL
error_severity               | NULL
error_state                  | NULL
error_message                | NULL
error_type                   | NULL
error_type_desc              | NULL

हम देख सकते हैं कि source_server , source_database , source_schema , source_table , और source_column कॉलम अब अंतर्निहित सर्वर, डेटाबेस, स्कीमा, तालिका और दृश्य में संदर्भित कॉलम के बारे में जानकारी प्रदान करते हैं।

मेरे मामले में, मेरा विचार एक लिंक किए गए सर्वर पर टेबल से पूछताछ करता है। इसलिए, बेस टेबल एक अलग डेटाबेस में, एक अलग सर्वर पर हैं।

इसके विपरीत, जब हम @include_browse_information . सेट करते हैं करने के लिए 2 अगले उदाहरण में, हम दृश्य में वास्तविक कॉलम प्राप्त करेंगे।

@include_browse_information = 2

अंत में, आइए सेट करते हैं @include_browse_information करने के लिए 2 .

SELECT * 
FROM sys.dm_exec_describe_first_result_set(
    N'SELECT AlbumName FROM vAlbums', 
    null, 
    2
);

इस मामले में, क्वेरी का विश्लेषण किया जाता है जैसे कि इसका उपयोग कर्सर को तैयार करने या निष्पादित करने में किया जाएगा।

इस बार, केवल दो पंक्तियाँ दी गई हैं:

+-------------+------------------+-----------+---------------+------------------+--------------------+--------------+-------------+---------+------------------------------+----------------+----------------------+--------------------+------------------+--------------------------------+---------------------+---------------------------+-------------------------+-----------------------+-------------------+---------------------+----------------------------+-----------------+-------------------+-----------------+----------------+-----------------+----------------------+-------------------------+-----------------+----------------------+------------------------+----------------------------+--------------------------+------------------------+----------------+------------------+---------------+-----------------+--------------+-------------------+
| is_hidden   | column_ordinal   | name      | is_nullable   | system_type_id   | system_type_name   | max_length   | precision   | scale   | collation_name               | user_type_id   | user_type_database   | user_type_schema   | user_type_name   | assembly_qualified_type_name   | xml_collection_id   | xml_collection_database   | xml_collection_schema   | xml_collection_name   | is_xml_document   | is_case_sensitive   | is_fixed_length_clr_type   | source_server   | source_database   | source_schema   | source_table   | source_column   | is_identity_column   | is_part_of_unique_key   | is_updateable   | is_computed_column   | is_sparse_column_set   | ordinal_in_order_by_list   | order_by_is_descending   | order_by_list_length   | error_number   | error_severity   | error_state   | error_message   | error_type   | error_type_desc   |
|-------------+------------------+-----------+---------------+------------------+--------------------+--------------+-------------+---------+------------------------------+----------------+----------------------+--------------------+------------------+--------------------------------+---------------------+---------------------------+-------------------------+-----------------------+-------------------+---------------------+----------------------------+-----------------+-------------------+-----------------+----------------+-----------------+----------------------+-------------------------+-----------------+----------------------+------------------------+----------------------------+--------------------------+------------------------+----------------+------------------+---------------+-----------------+--------------+-------------------|
| 0           | 1                | AlbumName | 0             | 231              | nvarchar(255)      | 510          | 0           | 0       | SQL_Latin1_General_CP1_CI_AS | NULL           | NULL                 | NULL               | NULL             | NULL                           | NULL                | NULL                      | NULL                    | NULL                  | 0                 | 0                   | 0                          | NULL            | Test              | dbo             | vAlbums        | AlbumName       | 0                    | 0                       | 1               | 0                    | 0                      | NULL                       | NULL                     | NULL                   | NULL           | NULL             | NULL          | NULL            | NULL         | NULL              |
| 1           | 2                | ROWSTAT^@   | 0             | 56               | int                | 4            | 10          | 0       | NULL                         | NULL           | NULL                 | NULL               | NULL             | NULL                           | NULL                | NULL                      | NULL                    | NULL                  | 0                 | 0                   | 0                          | NULL            | NULL              | NULL            | NULL           | NULL            | 0                    | 0                       | 0               | 0                    | 0                      | NULL                       | NULL                     | NULL                   | NULL           | NULL             | NULL          | NULL            | NULL         | NULL              |
+-------------+------------------+-----------+---------------+------------------+--------------------+--------------+-------------+---------+------------------------------+----------------+----------------------+--------------------+------------------+--------------------------------+---------------------+---------------------------+-------------------------+-----------------------+-------------------+---------------------+----------------------------+-----------------+-------------------+-----------------+----------------+-----------------+----------------------+-------------------------+-----------------+----------------------+------------------------+----------------------------+--------------------------+------------------------+----------------+------------------+---------------+-----------------+--------------+-------------------+

और आपको बग़ल में स्क्रॉल करने से बचाने के लिए, लंबवत आउटपुट में पहली पंक्ति यहां दी गई है:

is_hidden                    | 0
column_ordinal               | 1
name                         | AlbumName
is_nullable                  | 0
system_type_id               | 231
system_type_name             | nvarchar(255)
max_length                   | 510
precision                    | 0
scale                        | 0
collation_name               | SQL_Latin1_General_CP1_CI_AS
user_type_id                 | NULL
user_type_database           | NULL
user_type_schema             | NULL
user_type_name               | NULL
assembly_qualified_type_name | NULL
xml_collection_id            | NULL
xml_collection_database      | NULL
xml_collection_schema        | NULL
xml_collection_name          | NULL
is_xml_document              | 0
is_case_sensitive            | 0
is_fixed_length_clr_type     | 0
source_server                | NULL
source_database              | Test
source_schema                | dbo
source_table                 | vAlbums
source_column                | AlbumName
is_identity_column           | 0
is_part_of_unique_key        | 0
is_updateable                | 1
is_computed_column           | 0
is_sparse_column_set         | 0
ordinal_in_order_by_list     | NULL
order_by_is_descending       | NULL
order_by_list_length         | NULL
error_number                 | NULL
error_severity               | NULL
error_state                  | NULL
error_message                | NULL
error_type                   | NULL
error_type_desc              | NULL

इस उदाहरण में, source_table कॉलम में आधार तालिका के बजाय वास्तविक दृश्य नाम होता है, और source_database स्थानीय डेटाबेस का नाम है जिसे मैंने दृश्य से पूछताछ की है। साथ ही, source_column वह स्तंभ है जिसे मैंने आधार तालिकाओं के किसी भी स्तंभ के बजाय दृश्य से क्वेरी किया है।

@params तर्क

अब तक, हमने केवल @params . का उपयोग किया है के लिए तर्क इसे NULL . पर सेट करना है ।

यदि आप जिस SQL ​​बैच का विश्लेषण कर रहे हैं उसमें पैरामीटर हैं, तो @params . का उपयोग करें उन मापदंडों को घोषित करने के लिए कार्य करें।

यह उसी तरह काम करता है जैसे आप sp_executesql . का उपयोग करते समय पैरामीटर घोषित करते हैं प्रक्रिया।

यहां एक उदाहरण दिया गया है जो @params . के साथ एक पैरामीटर घोषित करता है तर्क।

SELECT * 
FROM sys.dm_exec_describe_first_result_set(
    N'SELECT ArtistName FROM Homer.Music.dbo.Artists WHERE ArtistId = @ArtistId', 
    N'@ArtistId int', 
    1
);

परिणाम (ऊर्ध्वाधर आउटपुट का उपयोग करके):

-[ RECORD 1 ]-------------------------
is_hidden                    | 0
column_ordinal               | 1
name                         | ArtistName
is_nullable                  | 0
system_type_id               | 231
system_type_name             | nvarchar(255)
max_length                   | 510
precision                    | 0
scale                        | 0
collation_name               | SQL_Latin1_General_CP1_CI_AS
user_type_id                 | NULL
user_type_database           | NULL
user_type_schema             | NULL
user_type_name               | NULL
assembly_qualified_type_name | NULL
xml_collection_id            | NULL
xml_collection_database      | NULL
xml_collection_schema        | NULL
xml_collection_name          | NULL
is_xml_document              | 0
is_case_sensitive            | 0
is_fixed_length_clr_type     | 0
source_server                | Homer
source_database              | Music
source_schema                | dbo
source_table                 | Artists
source_column                | ArtistName
is_identity_column           | 0
is_part_of_unique_key        | 0
is_updateable                | 1
is_computed_column           | 0
is_sparse_column_set         | 0
ordinal_in_order_by_list     | NULL
order_by_is_descending       | NULL
order_by_list_length         | NULL
error_number                 | NULL
error_severity               | NULL
error_state                  | NULL
error_message                | NULL
error_type                   | NULL
error_type_desc              | NULL
-[ RECORD 2 ]-------------------------
is_hidden                    | 1
column_ordinal               | 2
name                         | ArtistId
is_nullable                  | 0
system_type_id               | 56
system_type_name             | int
max_length                   | 4
precision                    | 10
scale                        | 0
collation_name               | NULL
user_type_id                 | NULL
user_type_database           | NULL
user_type_schema             | NULL
user_type_name               | NULL
assembly_qualified_type_name | NULL
xml_collection_id            | NULL
xml_collection_database      | NULL
xml_collection_schema        | NULL
xml_collection_name          | NULL
is_xml_document              | 0
is_case_sensitive            | 0
is_fixed_length_clr_type     | 0
source_server                | Homer
source_database              | Music
source_schema                | dbo
source_table                 | Artists
source_column                | ArtistId
is_identity_column           | 0
is_part_of_unique_key        | 1
is_updateable                | 1
is_computed_column           | 0
is_sparse_column_set         | 0
ordinal_in_order_by_list     | NULL
order_by_is_descending       | NULL
order_by_list_length         | NULL
error_number                 | NULL
error_severity               | NULL
error_state                  | NULL
error_message                | NULL
error_type                   | NULL
error_type_desc              | NULL


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर (T-SQL) में वर्तमान सत्र की भाषा प्राप्त करने के 3 तरीके

  2. SQL सर्वर में फ़ाइल समूह की आईडी वापस करने के लिए FILEGROUP_ID() का उपयोग करें

  3. SQL सर्वर:पूल किए गए कनेक्शन में अलगाव स्तर लीक

  4. पूर्वाभ्यास:SQL सर्वर उच्च उपलब्धता की स्थापना

  5. SQL सर्वर में संग्रहीत कार्यविधि के लिए स्तंभ जानकारी लौटाएँ:sp_sproc_columns