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

SQL सर्वर में डेटाबेस का नाम कैसे बदलें - SQL सर्वर / TSQL ट्यूटोरियल भाग 26

परिदृश्य:

हम अक्सर ऐसी स्थिति का सामना करते हैं जहां हमें डेटाबेस का नाम बदलने की आवश्यकता होती है। स्थिति के बारे में सोचें, आप वित्तीय फर्म के लिए SQL सर्वर डेवलपर के रूप में काम कर रहे हैं और उनके पास डेटाबेस नाम TechBrothersIT है और वे Techbrothers का नाम बदलना चाहेंगे। आपको वे स्क्रिप्ट प्रदान करने की आवश्यकता है जो QA, UAT और उत्पादन परिवेश में चलाई जा सकें।

समाधान:

जीयूआई द्वारा नामकरण:
डेटाबेस का नाम बदलना बहुत आसान है, आप बस डेटाबेस पर राइट क्लिक कर सकते हैं और फिर नाम बदलें चुन सकते हैं।
SQL सर्वर में डेटाबेस का नाम कैसे बदलें - SQL सर्वर / TSQL ट्यूटोरियल

आप देखें कि डेटाबेस का नाम आपको परिवर्तन के लिए प्रेरित करेगा। आगे बढ़ें और इसे बदलें और एंटर दबाएं। SQL सर्वर में डेटाबेस का नाम कैसे बदलें - SQL सर्वर / TSQL ट्यूटोरियल



TSQL का उपयोग करके डेटाबेस का नाम कैसे बदलें: आप SQL सर्वर में डेटाबेस का नाम बदलने के लिए TSQL का उपयोग कर सकते हैं।
1) Sp_Rename सिस्टम संग्रहित प्रक्रिया का उपयोग करके हम SQL सर्वर में डेटाबेस का नाम बदलने के लिए sp_rename सिस्टम संग्रहीत कार्यविधि का उपयोग कर सकते हैं। मान लें कि हम TechBrtohersIT का नाम बदलकर TechBrother करना चाहते हैं। हम नीचे दी गई स्क्रिप्ट का उपयोग कर सकते हैं।
sp_renamedb 'OldDatabaseName','NewDatabaseName'


EXEC sp_renamedb 'TechBrothersIT','TechBrothers'

2) संशोधित के साथ डेटाबेस बदलें का उपयोग करें हम नाम बदलने के लिए नीचे दी गई स्क्रिप्ट का उपयोग कर सकते हैं। इस उदाहरण में, मैं TechBrothersIT का नाम बदलकर TechBrothers कर रहा हूँ।
USE master;
GO
ALTER DATABASE TechBrothersIT
Modify Name = TechBrothers ;
GO

सामान्य त्रुटि: मान लें कि डेटाबेस विभिन्न अनुप्रयोगों द्वारा उपयोग में है। आपको नीचे त्रुटि मिल सकती है।
संदेश 5030, स्तर 16, राज्य 2, पंक्ति 4
ऑपरेशन करने के लिए डेटाबेस को विशेष रूप से लॉक नहीं किया जा सकता है।

इस मामले में, आप नाम बदलें स्क्रिप्ट चलाने से पहले सभी कनेक्शनों को मार सकते हैं। डेटाबेस पर सभी कनेक्शनों को मारने के लिए नीचे स्क्रिप्ट का उपयोग किया जा सकता है। नाम बदलने के लिए डेटाबेस पर सभी कनेक्शनों को मारने से पहले अपनी टीम और अन्य टीमों के साथ सुनिश्चित करें।
USE MASTER
GO
DECLARE @DatabaseName AS VARCHAR(500)
-->Provide the DataBaseName for which want to Kill all processes.
SET @DatabaseName='YourDataBaseName'
DECLARE @Spid INT
DECLARE KillProcessCur CURSOR FOR
  SELECT spid
  FROM   sys.sysprocesses
  WHERE  DB_NAME(dbid) = @DatabaseName
OPEN KillProcessCur
FETCH Next FROM KillProcessCur INTO @Spid
WHILE @@FETCH_STATUS = 0
  BEGIN
      DECLARE @SQL VARCHAR(500)=NULL
      SET @SQL='Kill ' + CAST(@Spid AS VARCHAR(5))
      EXEC (@SQL)
      PRINT 'ProcessID =' + CAST(@Spid AS VARCHAR(5))
            + ' killed successfull'
      FETCH Next FROM KillProcessCur INTO @Spid
  END
CLOSE KillProcessCur
DEALLOCATE KillProcessCur
 
 
 
 
 

  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 सर्वर:संचार लिंक विफलता आवश्यक SSL (पैकेट प्राप्त करने में विफल)

  2. SQL सर्वर में sp_depends का उपयोग न करें (यह पदावनत है)

  3. एसक्यूएल सर्वर (टी-एसक्यूएल) में संयोजन कैसे खोजें

  4. Sql सर्वर प्रतिकृति को सर्वर से कनेक्शन बनाने के लिए वास्तविक सर्वर नाम की आवश्यकता होती है

  5. SQL सर्वर में सभी अविश्वसनीय विदेशी कुंजी बाधाओं को कैसे वापस करें (T-SQL उदाहरण)