ROW_NUMBER, RANK, DENSE_RANK, NTILE, PIVOT, UNPIVOT, OUTPUT, CROSS APPLY, OUTER APPLY, EXCEPT, INTERSECT, BEGIN TRY, END TRY, BEGIN CATCH, END CATCH, C# Assembly,CLR, Common Table Expression (CTE) SQL Server 2005 ile birlikte T-SQL dilinde güncellemeler, yeni ifadeler geliştirildi. Bu yeni gelen özelliklerden bazıları DDL (data definition language) bazıları da DML… Continue Reading ROW_NUMBER, PIVOT, UNPIVOT, OUTPUT, APPLY

SQL Server üzerinde otomatik sorgular hazırlayıp sorgu sonuçlarını raporla ilgili kişilere mail olarak atmak veya ftp aracılığıyla belirlenmiş bir alana aktarmak özellikle kurumsal uygulamalarda ihtiyaç duyulan bir durumdur. Bu yazıda SQL Server üzerinde mail ve ftp işlemi nasıl yapılacağını örneklendireceğiz. FTP ile dosya alma veya gönderme Ne yazık ki T-SQL… Continue Reading SQL Server’da FTP ve e-Mail İşlemi

Daha önce yazdığımız ipuçlarına ek olarak bu yazıda aşağıdaki ipuçlarını vereceğiz. SQL Server servisi her çalıştığında bazı komutları nasıl çalıştırabiliriz. SQL Server Enterprise Management konsolde açılmıyor. “IS NULL” ve “= NULL” arasındaki fark nedir. COALESCE(), ISNULL() ve NULLIF() fonksiyonlar arasındaki fark nedir. NEWSEQUENTIALID() ve NEWID() arasındaki fark nedir. TRUNCATE ile… Continue Reading SQL Server Programlama ve Yönetim İpuçları – II

SQL Server sahip olduğu Export/Import aracıyla diğer veritabanlarına göre bir adım önde diyebiliriz. SQL Server üzerinde çalışırken sorgu sonucunu Excel formatında dışarı çıkarmak her zaman ihtiyaç duyulan bir durum olmuştur. Excel’de SQL Server’e import veya ters yönde export işlemi için en çok kullanılan yöntemler SQL 2000’de Data Transformation Services (DTS),… Continue Reading SQL’den Excel’e, Excel’den SQL’e Aktarım

Bu makalede genelde ilişkisel veritabanı [Relational Database] sistemlerinin özelde SQL Server’in temel konularından biri olan JOIN seçeneklerini özetleyeceğiz. SQL Server ne tür JOIN seçenekleri sunuyor, bu seçeneklerin birbirinden farkı nedir, olay sadece syntax farklılığı mıdır, performans cephesinden neler oluyor . . . bu soruları yanıtlayacağız. Table veya view gibi kaynakları… Continue Reading SQL Server JOIN türleri kullanılır, INNER JOIN, OUTER JOIN (LEFT JOIN, RIGHT JOIN, CROSS JOIN) nedir?

Önceki yazıda SQL Server’in desteklediği mantıksal tablo birleştirme işleminden (Table Join) bahsetmiştik. Bu yazıda da biraz işin mutafağına geçerek birleştirme işlemin hangi fiziksel yöntemlerle yapıldığını özetlemeye çalışacağız. Diğer veritabanları gibi SQL Server’da bulunan query optimizer bir sorguyu etkin bir şekilde çalıştırmak için bir planlama sunar. Bu planlamanın en önemli parçası… Continue Reading SQL Server JOIN Türleri – II (LOOP, HASH, MERGE JOIN)

SQL Server eski sürümlerinden beri GROUP BY ile veri özetlemesini destekler ayrıca ara ve alt toplamlar için WITH ROLLUP ve WITH CUBE yantümcelerini sunar. SQL Server 2008, konuyla ilgili GROUPING SETS isimli yeni bir operatör sunmaktadır. Bu makalede bu konudaki değişiklikleri örneklendireceğiz. GROUP BY, WITH ROLLUP ve WITH CUBE yantümceleriyle… Continue Reading SQL Server 2008 GROUP BY GROUPING SETS GROUPING_ID ROLLUP CUBE

T-SQL’de temel olarak veri arama, bulma ve işleme işlemleri gerçekleştirilir. En çok kullanılan yantümce hiç şüphesiz “SELECT” deyimidir. Peki SELECT ve onunla birlikte kullandığımız ifadeler hangi sırayla yürütülmektedir. SQLHacks’de denk geldiğim bu küçük bilgiyi paylaşmakta fayda görüyorum. Bir SELECT cümlesi yüzeysel olarak aşağıdaki formata sahiptir. SELECT DISTINCT TOP (list) FROM… Continue Reading SQL Deyimlerinin Yürütülme Sırası

SQL Server’da uygulamamız için kritik olan tablodaki bazı veya tüm alanların değişip değişmediğini öğrenmemiz gerektiğinde bunun için ya log, history gibi arşiv tabloları oluşturulur veya o satır değiştiği zaman o satır için tanımlı versiyon numarasını değiştiririz. Tarihçe tablolarını oluşturmamız hem değişiklik olup olmadığını hem de verilerin eski ve yeni değerlerini… Continue Reading Tablodaki Satır Değişmiş mi ? (CHECKSUM ve timestamp)

SQL Server 2005 ile birlikte DAC (Dedicated Administrator Connection), SQL Server’in yoğunluktan, kilitlenmenin oluşmasından hiçbir bağlantıya yanıt vermediği bir anda sistem yöneticisinin sisteme giriş yapabilmesini sağlayan önemli bir özelliktir. Bu tür durumlarda SQL Server’i restart etmek sorun yaratabileceği için sisteme bağlanıp olup biteni görmekte fayda var. Bunun için öncelikle sunucunu… Continue Reading SQL Server Dedicated Administrator Connection (DAC)