29 Mayıs 2011 Pazar

ASP sayfalarında Ajax Türkçe karakter sorunu

Sayfanızdan veri gönderip alırken ajax ile Türkçe karakter sorunu yaşıyorsanız bunlara dikkat edin.
  1. Sayfanızda meta taglarında
    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=1254">
    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-9" />
    kodu bulunsun.
  2. Ajax veri gönderip aldığınız sayfa tamamen HTML kod düzeninde olsun. Yani html/head/body/ dizilimini kullanıın,
     

Bu şekilde yaparsanız sorun ortadan kalkar.

9 Mayıs 2011 Pazartesi

javascript replace medotu

javascript ile replace yapmak yani birşeyi başka birşey ile değiştirmek şöyle yapılıyor.

// önce bir değişken tanımlayalım.
var degisken = "istanbul bizim en büyük şehrimiz";

//şimdi değiştirme işlemi yapalım.
degisken.replace("istanbul","Trabzon");

// burada şunu yaptık. değişkenimiz içindeki istenbul yazan yerlere Trabzon yazsın dedik.
Javascriptte büyük küçük harf duyarlılığı vardır. Bunu önüne geçmek için de.

degisken.replace(/istanbul/i,"Trabzon");

Bir de değişkendeki istediğimiz özellikteki bütün verileri değiştirmek istersek şöyle yapacağız.
degisken.replace(/i/gi,"I");

şunu yaptık: değişkenimizdeki bütün "i" harflerini "I" yaptık.

buradan da anlaşıldığı gibi direkt replace dediğimizde sadece bir işlem yapıyor. Kısace açıklayalım:
  • degisken.replace(/degisen/,"değişecek"); veya
    degisken.replace("degisen","değişecek");Sadece bir tane değişiklik yapıyor.
  • degisken.replace(/degisen/i,"değişecek");i koyduğumuzda BÜYÜK/küçük harf duyarsız hale geliyor.
  • degisken.replace(/degisen/g,"değişecek");
    g koyduğumuzda içindeki bütün değişecekleri değiştiriyor.
  • degisken.replace(/degisen/gi,"değişecek");
    gi koyduğumuzda hem BÜYÜK/küçük harf duyarsız hem de bu özelliği taşıyan tüm verileri değiştiriyor.

4 Mayıs 2011 Çarşamba

MSSQL logları silmek, veritabanını küçültmek

Çok yüksek boyutlu bir veritabanım vardı. 100GB ve logları da 50GB yer tutuyordu bundaki kayıtları nasıl silerim diye düşündüm. DELETE komutuyla silmek istedim. sildikçe log dosyası kabardı ve veritabanı yine 100 GB kaldı. Yani olmadı.
Sonra araştırdım. veritabanını sıfırladım.Aşağıdaki komut ile:


TRUNCATE TABLE tabloAdim


MSSQL içine bunu yazdım ve çalıştırdım 100GB veriyi birkaç saniyede sildi. Normalde 10bin kayıtı DELETE komutuyla 15-20 dakikada siliyordum.


Sonra log dosyasını temizlemek için de aşağıdaki komutu kullandım.


dump tran secmenler WITH TRUNCATE_ONLY
DBCC SHRINKFILE(2,EMPTYFILE)



Log dosyası 1 MB civarında oldu.
Ama iş bitmedi. yine veritabanım 100 GB olarak duruyor karşımda.
Son olarak da MSSQL Management üzerinden veritabanının üzerine sağ tıkladım. Task>Shirink>Database seçeneğini tıkadım. Açılan pencerede Shirink Action kutucuğunu işaretledim. OK dedim işlem tamam


bu işlemin ardından veritabanım 3 MB oldu. Şaka gibi bu MS SQL işleri,