Skenario:
Anda bekerja sebagai pengembang SQL Server, Anda perlu menyediakan beberapa pembaruan atau menghapus skrip untuk memperbarui atau menghapus data dari tabel. Anda ingin mengambil cadangan catatan tersebut atau jika tabel kecil Anda mungkin ingin membuat cadangan seluruh tabel sebelum Anda menjalankan update atau delete statement.Bagaimana Anda akan membuat backup seluruh tabel atau hanya record yang Anda butuhkan untuk menjalankan update atau delete statement?
Solusi:
SQL Server tidak menyediakan cadangan tingkat Tabel. Ketika kita mengatakan bahwa kita ingin mengambil cadangan tabel, kita berbicara tentang membuat salinan tabel yang ada dengan catatan.Katakanlah jika kita memiliki dbo.Tabel Pelanggan dengan sedikit catatan dan kita ingin membuat tabel cadangan dbo.Customber_Bkp_TodayDate, kita dapat menggunakan skrip di bawah ini
Pertama buat tabel dbo.Customer dengan catatan sampel
USE yourDatabaseName Go Create Table dbo.Customer( Id int identity(1,1), FName VARCHAR(50), LName VARCHAR(50), Age int, DOB Date, Salary Numeric(6,2)) --Use the Insert Into with Values single Statement Insert into dbo.Customer Values('Aamir','Shahzad',36,'1980-01-01',5000.50), ('Raza','M',33,'1983-03-03',4900.34), ('John','Smith',26,'1990-04-05',5000.50)
Sekarang mari buat tabel cadangan dbo.Customber_Bkp_TodayDate dengan semua catatan yang ada di dbo.Customer.
Select * into dbo.Customber_Bkp_20160507 from dbo.Customer
Untuk membuat tabel baru dengan record, Anda harus menggunakan Into NewTable dari OldTable seperti yang ditunjukkan di atas.
Jika kita hanya tertarik untuk menyalin record di mana FName='Aamir' query kita akan seperti itu di bawah ini.
Select * into dbo.Customber_Bkp_20160507_OnlyAamir from dbo.Customer where FName='Aamir'
Jalankan skrip di atas dan periksa tabel jika dibuat dengan catatan yang diperlukan.
Cara mencadangkan catatan ke tabel baru dari Tabel SQL Server yang ada di SQL Server |
Skrip yang digunakan dalam demo video:
--Take the backup or create table for all records Select * into [YourDBName].dbo.Customer_20160510 from [dbo].[Customer] --Create table for selected records Select * into [YourDBName].dbo.Customer_20160510_TwoRecords from [dbo].[Customer] where id<=2 --Check if table is created successfully Select * From [YourDBName].dbo.Customer_20160510_TwoRecords Select * from [dbo].[Customer] --Update Records in current table update [dbo].[Customer] set LName=LName+' Test' where id<=2 --Update records in current table from backup table update d set d.LName=s.LName from [YourDBName].dbo.Customer_20160510_TwoRecords s inner join [dbo].[Customer] d on s.id=d.id
Video Demo :Cara membuat tabel baru dari tabel yang sudah ada dengan data di SQL Server dengan cepat