Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So ändern Sie einen Datenbanknamen in SQL Server mit T-SQL

Wenn Sie SQL Server verwenden und den Namen einer Datenbank ändern möchten, können Sie dies mithilfe einer GUI (wie SSMS) oder mithilfe von Transact-SQL tun.

Wenn Sie eine GUI verwenden, können Sie mit der rechten Maustaste auf den Datenbanknamen klicken und auf Umbenennen klicken um die Datenbank umzubenennen (möglicherweise müssen Sie die Datenbank zuerst in den Einzelbenutzermodus versetzen).

Wenn Sie dies mit T-SQL tun, sollten Ihnen die Beispiele auf dieser Seite helfen.

Einfaches Beispiel

Hier ist ein einfaches Beispiel für das Ändern des Namens einer Datenbank mit T-SQL:

USE master;
GO

ALTER DATABASE Problems  
MODIFY NAME = Solutions; 
GO

Zuerst wechseln wir zur Master-Datenbank, dann verwenden wir die ALTER DATABASE -Anweisung, um den Namen der Datenbank von Problems zu ändern zu Solutions .

Dieses Beispiel verwendet auch GO was, obwohl es nicht ausschließlich T-SQL ist, von verschiedenen Dienstprogrammen als Signal für das Ende eines Stapels von T-SQL-Anweisungen erkannt wird.

Daten und Protokolldateien umbenennen

Es ist wichtig zu beachten, dass im vorherigen Beispiel die Daten- und Protokolldateien nicht umbenannt werden. Es benennt einfach die Datenbank um. Die Daten- und Protokolldateien behalten ihren ursprünglichen Namen. In diesem Beispiel haben wir jetzt eine Datenbank namens Solutions aber mit Daten und Protokolldateien, die so etwas wie Problems.mdf heißen und Problems_log.ldf . Das wollen wir nicht.

So können wir die Datendateien und Protokolldateien für diese Datenbank umbenennen, sodass sie den Namen der Datenbank widerspiegeln:

-- Change the logical name of the data file
ALTER DATABASE Solutions
MODIFY FILE ( 
  NAME = 'Problems', 
  NEWNAME = 'Solutions' 
  );

-- Change the logical name of the log file
ALTER DATABASE Solutions
MODIFY FILE ( 
  NAME = 'Problems_log', 
  NEWNAME = 'Solutions_log' 
  );

-- Change the physical path of the data file
ALTER DATABASE Solutions
MODIFY FILE ( 
  NAME = 'Solutions', 
  FILENAME = 'D:\mssql\data\Solutions.mdf' 
  );

-- Change the physical path of the log file
ALTER DATABASE Solutions
MODIFY FILE ( 
  NAME = 'Solutions_log', 
  FILENAME = 'D:\mssql\data\Solutions_log.ldf' 
  );  

Also ändern wir beides logisch Namen und die physische Namen der Dateien.

Diese Dateipfade dienen nur zu Demonstrationszwecken, Sie sollten die Dateipfade verwenden, die für Ihre spezielle Umgebung richtig sind.

Beachten Sie auch, dass dieses Beispiel Windows-Dateipfade verwendet. Wenn Sie Linux (oder Mac) verwenden, müssen Sie einen Schrägstrich (/ ) anstelle des umgekehrten Schrägstrichs (\ ).