Archive for the ‘sql’ Category

sp_recompile

Wednesday, September 12th, 2007

Nedir? Her prosedür ve trigger derlendikleri zaman beraberinde sorgu planları(query plan) da derlenir. Bu planlar o anki tablo ve veri yapısına göre oluşturulur. Bazen bu planların tekrar oluşturulmasına gerek duyarız (Örneğin yeni indeks ekledik ve prosedür hala bu indeksi kullanmıyor...). Bunun için ya prosedürü/triggerı tekrar derlemeliyiz veya sp_recompile komutunu kullanırız. Nasıl Kullanılır? Bu ...

update statistics

Wednesday, September 12th, 2007

İstatistik nedir? İndeks yapısının dağılımı bilgisi ASE üzerinde tutulur. Buna "statistics" deniyor. Neden önemlidir? Bir sorgu çalıştırılmadan önce hangi indeksin kullanılacağına bu istatistikler sayesinde karar verilir. Tablolara yeni kolonlar eklenmesi veya tablonun aşırı büyümesi vs. sebeplerden sözkonusu istatistikler zamanla anlamsız kalabilir. Bu da performans problemi oluşturur. Ne yapmak gerekiyor? Performans sorunu yaşamamak için düzenli ...

Sybase ve MsSQL veritabanlarında cursor kullanımı

Tuesday, September 11th, 2007

Merhaba, Cursorlar satır satır işleme yapacağımız durumlarda en pratik çözümdür. Sybase ve MsSQL aynı kökten gelmelerine rağmen yazımında bazı küçük farklar vardır. Sybase cursorları prosedürler içinde kullanılmalıdır. Aşağıda önce Sybase sonra MsSQL için cursor kullanımlarını bulabilirsiniz. declare @id int, @name varchar(30) declare my_cursor cursor for select id, name from users open my_cursor fetch my_cursor ...

truncate table ve delete arasındaki fark nedir?

Thursday, September 6th, 2007

Bu kafa karıştıran bir mevzudur truncate ile delete arasındaki fark... Genel olarak bu farkları şöyle açıklamak mümkün: 1. truncate komutu transaction loguna dahil edilmeyen(non-logged) bir operasyon iken delete ile silinen tüm kayıtlar transaction loglarına yazılır. 2. truncate çok hızlı gerçekleşirken delete daha yavaş gerçekleşir. ipucu: İçinde aşırı fazla veri olan bir tabloyu ...

sybase dil desteği 1 - Türkçe Tarih

Tuesday, July 31st, 2007

Durun durun fazla heyecanlanmayın destek dediysek fazla değil. Bu yazımızda sadece tarih desteği sağlayacağız. Şu komutu çalıştırın: exec sp_addlanguage 'Turkish', 'Türkçe', 'Ocak,Şubat,Mart,Nisan,Mayıs,Haziran,Temmuz,'+ 'Ağustos,Eylül,Ekim,Kasım,Aralık', 'Oca,Şub,Mar,Nis,May,Haz,Tem,Ağu,Eyl,Eki,Kas,Ara', 'Pazartesi,Salı,Çarşamba,Perşembe,Cuma,Cumartesi,Pazar', 'dmy', 1 Bu komutu çalıştırdığınızda artık tarih bilgileri syslanguages'e kaydedilmiş adaptive server tarafından biliniyor olacak. Bu durumda her oturumda dili Türkçeye çekmek gerekiyor: set language Turkish Bunu komutu her bağlantıda çalıştırmak modern orta katmanlı uygulamalarda ...

sysconfigures not found

Tuesday, July 31st, 2007

Sybase'de server ayarları SYCONFIG.exe dosyası ile yapılır. Fakat hatasız çalıştırmak için biraz uğraşmak gerekir. Bugün henüz açılma sırasında karşılaşılan iki hatadan bahsedeceğim: SYBASE SETUP Invalid command line argument 'and'. Bu hata Windows'da kısayol ayarlarındaki programın başlangıç dizini ya da "Start in" kısmının boş olmasından kaynaklanmaktadır. Bu dizin boş olduğunda kullanıcının dizinini başlangıç ...