T-SQL’de Varolan Tablo Hücrelerine Kolayca String
Eklemek
Veritabanları ile çalışırken, özellikle bir tabloya bilgi eklerken veri girişi sırasında hata yapmak kolaydır. Yaygın bir senaryo, dosya adları için dosya uzantıları gibi önemli detayları dahil etmeyi unutmaktır. Eğer verileri eklerken bir dizeyi (örneğin bir dosya uzantısını) eklemeyi unuttuysanız, endişelenmeyin! Bu yazıda, mevcut tablo hücrelerinizi etkili bir şekilde güncellemek için MS-SQL’de T-SQL kullanarak basit bir çözüm sunacağız.
Problem: Eksik Dosya Uzantıları
Bir filename
sütununu içeren bir tablonuz olduğunu düşünün; bu sütuna uygun dosya uzantısı olmadan veri eklediniz. Örneğin, image1
, image2
gibi dosya isimleri eklediniz; fakat bunların image1.jpg
, image2.jpg
şeklinde görünmesi gerekiyor.
Örnek Durum:
- Tablo Adı:
images
- Sütun:
filename
- Gerekli Dosya Uzantısı:
.jpg
- Koşul: Sadece ID’si
50
‘den büyük olan kayıtları güncelle.
Çözüm: UPDATE
İfadesini Kullanma
Mevcut filename
sütunundaki değerlere (bu durumda, dosya uzantısı) dize eklemenin çözümü basittir. Bunu tek bir SQL ifadesi ile gerçekleştirebilirsiniz.
Adım Adım SQL Komutu
Çalıştırmanız gereken SQL komutu şu şekildedir:
UPDATE images
SET [filename] = RTRIM([filename]) + '.jpg'
WHERE id > 50;
SQL Komutunun Açıklaması
-
UPDATE images: Bu kısım, güncellemek istediğiniz tabloyu belirtir; bu durumda
images
tablosudur. -
SET [filename] = RTRIM([filename]) + ‘.jpg’: Bu ifade, mevcut dosya adlarının sonuna
.jpg
ekleyerekfilename
sütununu günceller.RTRIM([filename])
kullanımının önemi büyüktür:- RTRIM: Dosya adından herhangi bir boşluğu kaldırır. Bu önemli çünkü boşluklar varsa, SQL komutu fazladan boşlukları eklemeye çalışabilir ve bu durum sütunun beyan edilen karakter limitini aştığında hatalara neden olabilir.
-
WHERE id > 50: Bu koşul, yalnızca
50
‘den büyük ID’lere sahip satırların güncellenmesini sağlar.
Neden RTRIM Kullanılır?
Bu senaryoda RTRIM
kullanmak çok önemlidir. Eğer filename
değerleriniz sabit uzunluk formatındaysa (örneğin varchar(20)
), sonundaki boşlukların olması daha fazla karakter eklemeye çalışırken hata meydana getirebilir. Örneğin, eğer orijinal dosya adının uzunluğu 10 karakterse, image1
ifadesi, fazladan boşlukların eklenmesine neden olabilir; bu da .jpg
eklemeye çalıştığınızda varchar(20)
sınırını aşabilir.
Sonuç
Veritabanınızı güncellemek bazen göz korkutucu olabilir, özellikle veri girişi sırasında hata yaptıktan sonra. Ancak, basit bir UPDATE
komutu ve RTRIM
gibi fonksiyonların doğru uygulanmasıyla sorunları kolayca düzeltebilirsiniz. Sunulan adımları takip ederek, dosya adlarınız artık gerekli dosya uzantısı ile doğru biçimde güncellenmiş olmalıdır.
Bir sonraki sefer SQL veritabanınızdaki kayıtları güncellemeniz gerektiğinde, tablo hücrelerinize dize eklemek için bu basit yaklaşımı hatırlayın!