Anda dapat mencoba solusi. Singkatnya:
- Buat DB dummy dengan nama yang sama (mungkin perlu menghapus DB asli terlebih dahulu, simpan file asli atau ganti nama kemudian).
- Ambil dummy off line (lepaskan dan (set offline atau hentikan layanan SQL)).
- Hapus file dummy, lalu ganti dengan file DB asli.
- Coba pasang kembali de DB
Sunting
Seperti catatan komentar OP, Anda juga perlu membangun kembali log (jika Anda kehilangan transaksi)
-
ALTER DATABASE [MyDatabase ] REBUILD LOG ON (NAME='MyDatabaseLog',FILENAME='D:\Microsoft SQL Server\YourDataPath\Data\Logfile.ldf')
dan letakkan DB di log banyak pengguna (melepas DB dapat mengharuskan Anda untuk memasukkannya ke mode sekali pakai)
-
ALTER DATABASE [nomdb] SET MULTI_USER
Untuk semua detail gore, Anda dapat merujuk ke Artikel Paul Randal
(Catatan dalam artikel ini penulis menggunakan MODE DARURAT untuk (berusaha) memperbaiki log transaksi)
Saya sudah menggunakannya dengan sukses tetapi tergantung pada tingkat kerusakan atau detail lainnya, itu bisa menjadi tugas yang mustahil. Pertimbangkan untuk memulihkan cadangan.
Perhatikan bahwa aksi ini baik-baik saja di server pengembangan tetapi Anda benar-benar perlu merencanakan (dan menelusuri) untuk pemulihan bencana di server produksi.