में सभी तालिकाओं में किसी निश्चित प्रकार के सभी कॉलम खोजें SQL सर्वर डेटाबेस में सभी तालिकाओं में मैं किसी निश्चित प्रकार के सभी कॉलम (उदाहरण के लिए NTEXT
) कैसे ढूंढ सकता हूं?SQL सर्वर डेटाबेस
मैं एक एसक्यूएल क्वेरी की तलाश में हूं।
में सभी तालिकाओं में किसी निश्चित प्रकार के सभी कॉलम खोजें SQL सर्वर डेटाबेस में सभी तालिकाओं में मैं किसी निश्चित प्रकार के सभी कॉलम (उदाहरण के लिए NTEXT
) कैसे ढूंढ सकता हूं?SQL सर्वर डेटाबेस
मैं एक एसक्यूएल क्वेरी की तलाश में हूं।
: की तरह कुछ की कोशिश करो।
SELECT
table_name
FROM
INFORMATION_SCHEMA.TABLES T
WHERE
T.TABLE_CATALOG = 'MyDatabase' AND
EXISTS (
SELECT *
FROM INFORMATION_SCHEMA.COLUMNS C
WHERE
C.TABLE_CATALOG = T.TABLE_CATALOG AND
C.TABLE_SCHEMA = T.TABLE_SCHEMA AND
C.TABLE_NAME = T.TABLE_NAME AND
(C.DATA_TYPE = 'binary' OR
C.DATA_TYPE = 'varbinary' OR
C.DATA_TYPE = 'text' OR
C.DATA_TYPE = 'ntext' OR
C.DATA_TYPE = 'image')
)
आप सिस्टम दृश्य INFORMATION_SCHEMA.COLUMNS
का उपयोग कर सकते हैं। data_type
कॉलम में आप जो खोज रहे हैं वह है।
आपको INFORMATION_SCHEMA की आवश्यकता होगी। आप निम्न क्वेरी का उपयोग कर सकते हैं क्षेत्रों
SELECT table_name [Table Name], column_name [Column Name]
FROM information_schema.columns where data_type = 'NTEXT'
मैं सभी तालिकाओं कि संभवतः बाइनरी डेटा/फ़ाइलों पकड़ सकता है खोजने के लिए निम्नलिखित वक्तव्य का उपयोग किया था वापस जाने के लिए
SELECT c.* from INFORMATION_SCHEMA.columns c
INNER JOIN INFORMATION_SCHEMA.tables t ON t.table_name = c.table_name
WHERE c.data_type = 'int' AND t.table_type = 'base table'
इसके अलावा, आप
SELECT OBJECT_NAME(c.OBJECT_ID) TableName, c.name ColumnName
FROM sys.columns AS c
JOIN sys.types AS t ON c.user_type_id=t.user_type_id
WHERE t.name = 'ntext'
ORDER BY c.OBJECT_ID;
GO
कोशिश कर सकते हैं यह भी देखा गया शामिल होंगे – Daniel