Herkese merhaba,
Bu yazıda SQL Server’da text dosyasına yazı yazdıran prosedür hakkında bilgi vereceğim.
SQL Server’da bazı durumlarda text dosyası oluşturup içine veri yazdırmak isteyebiliriz.
Bu işlemi yapmak için ilk olarak aşağıdaki ayarlamaları yapmanız ve test için bir veritabanı oluşturmanız gerekmekte.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
Use Master GO EXEC master.dbo.sp_configure 'show advanced options', 1 RECONFIGURE WITH OVERRIDE GO EXEC master.dbo.sp_configure 'xp_cmdshell', 1 RECONFIGURE WITH OVERRIDE GO --Veritabanını oluşturuyoruz CREATE DATABASE YoutubeDenemelerim --Kendi veritabanı isminizi burada değiştirin GO USE YoutubeDenemelerim --Kendi veritabanı isminizi burada düzeltin GO |
İşlemi yaptıktan sonra aşağıdaki prosedürü oluşturalım.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
-- Not : Windows'un kurulu olduğu sürücü için bu prosedür çalışmamaktadır. CREATE PROC TextDosyasinaVeriYaz( @BilgisayarHardDisk NVARCHAR(100), @DosyaAdi NVARCHAR(100), @YazilacakYazi NVARCHAR(1000) ) AS BEGIN DECLARE @SQLKodu NVARCHAR(2000) SET @SQLKodu = N'echo ' + @YazilacakYazi + N' > ' + N'' + @BilgisayarHardDisk +':\' + @DosyaAdi + '.txt' EXEC master..xp_cmdshell @SQLKodu,no_output END; --Prosedürü çalıştıralım EXEC dbo.TextDosyasinaVeriYaz @BilgisayarHardDisk = N'D', -- nvarchar(100) @DosyaAdi = N'Pelin', -- nvarchar(100) @YazilacakYazi = N'Yavuz Selim Kart' -- nvarchar(1000) |
Prosedürü çalıştırdığınızda aşağıdaki gibi bir sonuç alacaksınız.
Pelin adında text dosyası oluştu. Dosyanın içini kontrol edelim.
Dosyanın içinde Yavuz Selim Kart yazıyor.
Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.
