sql >> Database teknologi >  >> RDS >> Sqlserver

Sådan ændres et databasenavn i SQL Server ved hjælp af T-SQL

Når du bruger SQL Server, hvis du vil ændre navnet på en database, kan du gøre dette ved at bruge en GUI (som SSMS) eller ved at bruge Transact-SQL.

Hvis du bruger en GUI, kan du højreklikke på databasenavnet og klikke på Omdøb for at omdøbe databasen (du skal muligvis først indstille databasen til enkeltbrugertilstand).

Hvis du gør dette ved hjælp af T-SQL, bør eksemplerne på denne side hjælpe dig.

Grundlæggende eksempel

Her er et grundlæggende eksempel på ændring af navnet på en database ved hjælp af T-SQL:

USE master;
GO

ALTER DATABASE Problems  
MODIFY NAME = Solutions; 
GO

Først skifter vi til masterdatabasen, derefter bruger vi ALTER DATABASE sætning for at ændre navnet på databasen fra Problems til Solutions .

Dette eksempel bruger også GO som, selv om det ikke er strengt taget T-SQL, genkendes af forskellige værktøjer som signalerer slutningen på en batch af T-SQL-sætninger.

Omdøb data og logfiler

Det er vigtigt at bemærke, at det forrige eksempel ikke omdøber dataene og logfilerne. Det omdøber blot databasen. Dataene og logfilerne forbliver med deres oprindelige navne. I dette eksempel har vi nu en database kaldet Solutions men med data og logfiler kaldet noget som Problems.mdf og Problems_log.ldf . Det er ikke det, vi ønsker.

Sådan kan vi omdøbe datafilerne og logfilerne til denne database, så de afspejler navnet på databasen:

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

Så vi ændrer både det logiske navne og det fysiske navnene på filerne.

Disse filstier er udelukkende til demonstrationsformål, du bør bruge de filstier, der er korrekte for dit særlige miljø.

Bemærk også, at dette eksempel bruger Windows-filstier. Hvis du bruger Linux (eller Mac), skal du bruge en skråstreg (/ ) i stedet for omvendt skråstreg (\ ).


  1. SQLcl til at overføre data fra Oracle til PostgreSQL eller YugabyteDB 🅾🐘🚀

  2. Ms-Access VBA Class Object Arrays

  3. Hvad sker der med en ikke-forpligtet transaktion, når forbindelsen lukkes?

  4. Opret tabelvariabel i MySQL