Microsoft SQL Server
विभाजन
खोज…
विभाजन सीमा मान प्राप्त करें
SELECT ps.name AS PartitionScheme
, fg.name AS [FileGroup]
, prv.*
, LAG(prv.Value) OVER (PARTITION BY ps.name ORDER BY ps.name, boundary_id) AS PreviousBoundaryValue
FROM sys.partition_schemes ps
INNER JOIN sys.destination_data_spaces dds
ON dds.partition_scheme_id = ps.data_space_id
INNER JOIN sys.filegroups fg
ON dds.data_space_id = fg.data_space_id
INNER JOIN sys.partition_functions f
ON f.function_id = ps.function_id
INNER JOIN sys.partition_range_values prv
ON f.function_id = prv.function_id
AND dds.destination_id = prv.boundary_id
विभाजन स्विचिंग
इस [TechNet Microsoft पेज] [1] के अनुसार,
विभाजन डेटा आपको संपूर्ण डेटा संग्रह की अखंडता को बनाए रखते हुए अपने डेटा के सबसेट को जल्दी और कुशलता से प्रबंधित और एक्सेस करने में सक्षम बनाता है।
जब आप निम्न क्वेरी को कॉल करते हैं तो डेटा भौतिक रूप से स्थानांतरित नहीं होता है; डेटा के स्थान के बारे में केवल मेटाडेटा बदलता है।
ALTER TABLE [SourceTable] SWITCH TO [TargetTable]
तालिकाओं में समान डेटा प्रकार और NULL सेटिंग्स के साथ समान कॉलम होने चाहिए, उन्हें एक ही फ़ाइल समूह में होना चाहिए और नई लक्ष्य तालिका खाली होनी चाहिए। स्विचिंग विभाजन पर अधिक जानकारी के लिए पृष्ठ लिंक ऊपर देखें।
[१]: https://technet.microsoft.com/en-us/library/ms191160(v=sql.105).aspx स्तंभ IDENTITY
संपत्ति भिन्न हो सकती है।
एकल क्वेरी का उपयोग करके विभाजन तालिका, कॉलम, स्कीम, फ़ंक्शन, कुल और न्यूनतम-अधिकतम सीमा मान प्राप्त करें
SELECT DISTINCT
object_name(i.object_id) AS [Object Name],
c.name AS [Partition Column],
s.name AS [Partition Scheme],
pf.name AS [Partition Function],
prv.tot AS [Partition Count],
prv.miVal AS [Min Boundry Value],
prv.maVal AS [Max Boundry Value]
FROM sys.objects o
INNER JOIN sys.indexes i ON i.object_id = o.object_id
INNER JOIN sys.columns c ON c.object_id = o.object_id
INNER JOIN sys.index_columns ic ON ic.object_id = o.object_id
AND ic.column_id = c.column_id
AND ic.partition_ordinal = 1
INNER JOIN sys.partition_schemes s ON i.data_space_id = s.data_space_id
INNER JOIN sys.partition_functions pf ON pf.function_id = s.function_id
OUTER APPLY(SELECT
COUNT(*) tot, MIN(value) miVal, MAX(value) maVal
FROM sys.partition_range_values prv
WHERE prv.function_id = pf.function_id) prv
--WHERE object_name(i.object_id) = 'table_name'
ORDER BY OBJECT_NAME(i.object_id)
बस इच्छित टिप्पणी का विवरण देखने के लिए actual table name
साथ where
actual table name
table_name
और प्रतिस्थापित करें।