क्या मेरी सभी संग्रहीत प्रक्रियाओं को अलग-अलग .sql फ़ाइलों में थूकने के लिए SQL 2005 में एक सरल प्रक्रिया है। मैं उन्हें VSS में ले जाना चाहता हूं, लेकिन स्रोत प्राप्त करने के लिए प्रत्येक पर क्लिक करने की संभावना से बहुत उत्साहित नहीं हूं, इसे टेक्स्ट फ़ाइल में डंप कर रहा हूं और इसी तरह ...sql फ़ाइलों को संग्रहीत प्रक्रिया
उत्तर
SQL प्रबंधन स्टूडियो में डेटाबेस पर राइट क्लिक करें, कार्यों पर जाएं -> स्क्रिप्ट बनाएं, जादूगर walkthrough। पृष्ठों में से एक आपको प्रत्येक ऑब्जेक्ट को अपनी फ़ाइल में स्क्रिप्ट करने देगा।
आप यह चुन सकते हैं:
select
O.name, M.definition
from
sys.objects as O
left join
sys.sql_modules as M
on O.object_id = M.object_id
where
type = 'P'
और आपको संग्रहित प्रक्रियाओं के लिए नाम और स्रोत कोड मिलता है। उचित रूप से सबसे आसान तरीका, इसे फाइलों में कैसे रखा जाए, सी #, जावा, आदि जैसे कुछ "क्लासिक" languge में है ...
यदि आप अपने पूरे डेटाबेस को संस्करण बनाना चाहते हैं, तो माइक्रोसॉफ्ट के पास SQL सर्वर डेटाबेस प्रकाशन विज़ार्ड है (आप इसे here डाउनलोड कर सकते हैं)। सिंहावलोकन का कहना है कि विजुअल स्टूडियो के साथ सीधा एकीकरण है, लेकिन मैंने इसका इस्तेमाल व्यक्तिगत रूप से नहीं किया है कि यह कितना अच्छा (या बुरा) हो।
मैंने एक उपकरण लिखा जिसे मैंने SMOscript कहा था जिसमें प्रति डेटाबेस ऑब्जेक्ट एक एकल .sql फ़ाइल बनाने का विकल्प है।
यह CREATE और DROP स्क्रिप्ट उत्पन्न करने के लिए SQL सर्वर की SMO लाइब्रेरी का उपयोग करता है।
Sql Server SMO का उपयोग करने का प्रयास करें। एक उदाहरण नीचे शामिल है:
//C:\Program Files\Microsoft SQL Server\{version}\SDK\Assemblies\
using Microsoft.SqlServer;
using Microsoft.SqlServer.Server;
using Microsoft.SqlServer.Management.Smo;
using Microsoft.SqlServer.Management.Common;
using System.Data.SqlClient;
string sqlConnectionString="";
string databaseName="";
var Connection = new SqlConnection(sqlConnectionString);
Connection.Open();
int counter = 0;
var db= new Server(new ServerConnection(Connection)).Databases[databaseName];
foreach (var item in db.StoredProcedures.OfType<StoredProcedure>())
{
if (item.IsSystemObject == false)
{
using (TextWriter writer = new StreamWriter(item.Name+".sql", false))
{
writer.WriteLine(item.TextHeader + item.TextBody);
}
}
}
तुम भी एक अलग sql फ़ाइल में चयनित डेटाबेस संग्रहीत प्रक्रिया स्क्रिप्ट उत्पन्न करने के लिए निम्न स्क्रिप्ट का उपयोग कर सकते हैं, फ़ाइलों प्रक्रिया के नाम से बनाने के लिए किया जाएगा।
गतिशील क्वेरी और कर्सर का उपयोग करना, आप इसे इस प्रकार कर सकते हैं:
DECLARE @name varchar(100)
DECLARE @Definition varchar(max)
DECLARE @sql varchar(300)
CREATE TABLE TEMPTABLE (ID INT IDENTITY(1,1), def varchar(max))
DECLARE script CURSOR
FOR
SELECT OBJECT_NAME(SYS.SQL_MODULES.OBJECT_ID), [DEFINITION] FROM
SYS.SQL_MODULES INNER JOIN SYS.OBJECTS ON
SYS.OBJECTS.OBJECT_ID = SYS.SQL_MODULES.OBJECT_ID
WHERE SYS.OBJECTS.TYPE='P'
OPEN script
FETCH NEXT FROM script INTO @name, @Definition
WHILE @@FETCH_STATUS = 0
BEGIN
FETCH NEXT FROM script INTO @name, @Definition
INSERT INTO TEMPTABLE VALUES(@definition)
SET @Sql = ('BCP "SELECT TOP 1 def FROM TEMPTABLE ORDER BY ID DESC" queryout "C:\' + @name + '.sql" -c -T')
EXEC XP_CmdShell @Sql
END
CLOSE script
DEALLOCATE script
DROP TABLE TEMPTABLE
- 1. T-SQL: संग्रहीत प्रक्रिया
- 2. SQL आउटपुट संग्रहीत प्रक्रिया ExecuteReader
- 3. एक और संग्रहीत प्रक्रिया SQL सर्वर से संग्रहीत प्रक्रिया कॉलिंग
- 4. SQL कोड संग्रहीत प्रक्रिया को खोलने और SQL Server
- 5. SQL सर्वर संग्रहीत प्रक्रिया रूपांतरण एसएसआईएस पैकेज
- 6. गतिशील संग्रहीत प्रक्रिया नाम linq से sql
- 7. SQL सर्वर संग्रहीत प्रक्रिया लाइन संख्या समस्या
- 8. SQL सर्वर संग्रहीत प्रक्रिया में वापसी मान
- 9. LINQ से SQL: संग्रहीत प्रक्रिया परिणाम
- 10. SQL सर्वर संग्रहीत प्रक्रिया कोड कहां संग्रहीत करता है?
- 11. एक संग्रहीत प्रक्रिया
- 12. संग्रहीत प्रक्रिया को गायब कर
- 13. किसी संग्रहीत प्रक्रिया से संग्रहीत प्रक्रिया को कैसे कॉल करें?
- 14. संग्रहीत प्रक्रिया में संग्रहीत प्रक्रिया को निष्पादित करना
- 15. संग्रहीत प्रक्रिया
- 16. संग्रहीत प्रक्रिया
- 17. PostgreSQL संग्रहीत प्रक्रिया को कैसे संपादित करें?
- 18. संग्रहीत प्रक्रिया केवल
- 19. ओरेकल संग्रहीत प्रक्रिया
- 20. संग्रहीत प्रक्रिया त्रुटि
- 21. संग्रहित प्रक्रिया को कॉल करने में नेस्टेड संग्रहीत प्रक्रिया परिणामों का उपयोग करें SQL सर्वर 2008
- 22. SQL सर्वर संग्रहीत प्रक्रिया संशोधन का इतिहास कैसे रखें
- 23. SQL सर्वर संग्रहीत प्रक्रिया में मैं लाइन ब्रेक कैसे जोड़ूं?
- 24. SQL सर्वर 2008 संग्रहीत प्रक्रिया में डिफ़ॉल्ट पैरामीटर मान
- 25. ईमेल भेजने के लिए SQL सर्वर संग्रहीत प्रक्रिया
- 26. संग्रहीत प्रक्रिया लेनदेन
- 27. डिबगिंग वर्तमान संग्रहीत प्रक्रिया संस्करण
- 28. एसक्यूएल संग्रहीत प्रक्रिया गुजर पैरामीटर
- 29. एसक्यूएल सर्वर - क्या संग्रहीत प्रक्रिया
- 30. अमान्य ऑब्जेक्ट नाम - संग्रहीत प्रक्रिया
अच्छा! उस बारे में नहीं पता था। – VVS