Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment modifier un nom de base de données dans SQL Server à l'aide de T-SQL

Lorsque vous utilisez SQL Server, si vous souhaitez modifier le nom d'une base de données, vous pouvez le faire en utilisant une interface graphique (comme SSMS) ou en utilisant Transact-SQL.

Si vous utilisez une interface graphique, vous pouvez cliquer avec le bouton droit sur le nom de la base de données et cliquer sur Renommer pour renommer la base de données (vous devrez peut-être d'abord définir la base de données en mode mono-utilisateur).

Si vous faites cela en utilisant T-SQL, les exemples sur cette page devraient vous aider.

Exemple de base

Voici un exemple de base pour changer le nom d'une base de données à l'aide de T-SQL :

USE master;
GO

ALTER DATABASE Problems  
MODIFY NAME = Solutions; 
GO

Nous passons d'abord à la base de données principale, puis nous utilisons le ALTER DATABASE instruction pour changer le nom de la base de données de Problems vers Solutions .

Cet exemple utilise également GO qui, bien que n'étant pas strictement T-SQL, est reconnu par divers utilitaires comme signalant la fin d'un lot d'instructions T-SQL.

Renommer les données et les fichiers journaux

Il est important de noter que l'exemple précédent ne renomme pas les données et les fichiers journaux. Il renomme simplement la base de données. Les données et les fichiers journaux conservent leurs noms d'origine. Dans cet exemple, nous avons maintenant une base de données appelée Solutions mais avec des données et des fichiers journaux appelés quelque chose comme Problems.mdf et Problems_log.ldf . Ce n'est pas ce que nous voulons.

Voici comment nous pouvons renommer les fichiers de données et les fichiers journaux de cette base de données, afin qu'ils reflètent le nom de la base de données :

-- 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' 
  );  

Nous changeons donc à la fois la logique les noms et le physique noms des fichiers.

Ces chemins de fichiers sont purement à des fins de démonstration, vous devez utiliser les chemins de fichiers corrects pour votre environnement particulier.

Notez également que cet exemple utilise des chemins de fichiers Windows. Si vous utilisez Linux (ou Mac), vous devrez utiliser une barre oblique (/ ) au lieu de la barre oblique inverse (\ ).