मुझे एक उचित समाधान मिला है। समस्या यह है कि प्रबंधन स्टूडियो गैर-एक्सएमएल डेटा के लिए 65535 वर्णों से अधिक प्रदर्शित नहीं कर सकता है, और इसे 65535 से अधिक प्रदर्शित करने के लिए सेट नहीं किया जा सकता है।
दस्तावेज़ीकरण के लिए कोड देखें :)
बैकअप स्क्रिप्ट:
-- 1. Read from DB, using XML to workaround the 65535 character limit
declare @definition varbinary(max)
select @definition = definition from dbo.sysdiagrams where name = 'ReportingDBDiagram'
select
'0x' + cast('' as xml).value('xs:hexBinary(sql:variable("@definition") )', 'varchar(max)')
for xml path('')
-- 2. Open the result XML in Management Studio
-- 3. Copy the result
-- 4. Paste this in backup script for @definition variable
स्क्रिप्ट पुनर्स्थापित करें:
declare @definition varbinary(max)
set @definition = 0xD0CF -- Paste 0x0 value from Backup script
-- Create diagram using 'official' Stored Procedure
exec dbo.sp_creatediagram
@diagramname = 'ReportingDBDiagramCopy',
@owner_id = null,
@version = 1,
@definition = @definition