Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Cara Mengganti Nama Database SQL Server menggunakan T-SQL

Meskipun Anda pasti dapat mengganti nama database SQL Server di GUI SSMS dengan mengklik kanan pada nama database dan memilih Ganti nama , terkadang Anda mungkin lebih suka (atau perlu) melakukannya menggunakan Transact-SQL.

Cara paling dasar untuk mengganti nama database menggunakan T-SQL adalah seperti ini:

-- Change to the master database
USE master;

-- Change the database name
ALTER DATABASE Films  
Modify Name = Movies; 
GO

Satu-satunya masalah dengan skrip dasar ini adalah tidak mengubah nama file data dan file log. Dalam kebanyakan kasus, Anda mungkin ingin mengubah nama file-file ini agar sesuai dengan nama baru. Dalam hal ini Anda bisa mengambil skrip berikut dan mengganti nama database dengan milik Anda sendiri (serta nama file dan jalurnya):

-- Change to the master database
USE master;

-- Change the database name
ALTER DATABASE Films  
Modify Name = Movies; 
GO

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

-- Change the logical name of the log file
ALTER DATABASE Movies
MODIFY FILE ( 
  NAME = 'Films_log', 
  NEWNAME = 'Movies_log' 
  );

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

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

-- Check it (View the list of database files and their locations)
USE master;
SELECT 
  name 'Logical Name', 
  physical_name 'File Location',
  size 'File Size'
FROM sys.master_files;

Skrip ini mengganti nama database, mengganti nama logis dari file data dan file log, dan kemudian mengganti nama file fisik sebenarnya dari file tersebut. Ini diakhiri dengan memilih daftar semua file database dan lokasinya. Ini memungkinkan Anda untuk memeriksa apakah file Anda memang memiliki nama yang benar.

Menggunakan Jalur File Linux/Mac

Contoh di atas menggunakan sintaks jalur file Windows (garis miring terbalik dan huruf drive). Jika Anda menggunakan Linux atau Mac, sintaks jalur file akan terlihat lebih seperti contoh berikut (hanya jalur file yang berubah – yang lainnya tetap sama).

-- Change to the master database
USE master;

-- Change the database name
ALTER DATABASE Films  
Modify Name = Movies; 
GO

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

-- Change the logical name of the log file
ALTER DATABASE Movies
MODIFY FILE ( 
  NAME = 'Films_log', 
  NEWNAME = 'Movies_log' 
  );

-- Change the physical name of the data file
ALTER DATABASE Movies
MODIFY FILE ( 
  NAME = 'Movies', 
  FILENAME = '/var/opt/mssql/data/Movies.mdf' 
  );

-- Change the physical name of the log file
ALTER DATABASE Movies
MODIFY FILE ( 
  NAME = 'Movies_log', 
  FILENAME = '/var/opt/mssql/data/Movies_log.ldf' 
  );  

-- Check it (View the list of database files and their locations)
USE master;
SELECT 
  name 'Logical Name', 
  physical_name 'File Location',
  size 'File Size'
FROM sys.master_files;

Pastikan untuk membuat cadangan database master setelah Anda mengganti nama database Anda (berikut cara membuat cadangan database dengan T-SQL). Anda mungkin juga ingin memeriksa/memperbarui skrip apa pun yang Anda miliki untuk memastikan skrip tersebut merujuk ke nama database baru.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Memulai GearHost untuk Pengembangan Database SQL Server

  2. Cara Menemukan Item Daftar pada Posisi Tertentu di SQL Server

  3. Contoh Pernyataan Gabung Sederhana di SQL Server

  4. Hapus semua spasi dari string di SQL Server

  5. Cara Mengonversi dari Satu Format Tanggal ke Format Lain di SQL Server menggunakan CONVERT()