Kategori: SQL


Merhaba arkadaşlar, Bugün sizlere SQL veritabanında daha önce açılmış olan bir kullanıcıyı silmeyi nasıl yaparız onu anlatacağım. SQL -> Security -> Logins altında bulunan silenecek olan kullanıcıyı silmek istediğinizde bir hata karşınıza çıkacaktır. Bu sorunu da ufak bir query yazarak çözüyoruz. Öncelikle “test” kullanıcısının sisteme giriş ID sini buluyoruz ve […]

Could not drop login ‘test’ as the user is currently ...



Merhaba arkadaşlar, Bugünkü yazımızda Sql server veri tabanımızda bir tablo oluşturduğumuz zaman ve tabloda değişikliği kaydet dediğimiz zaman karşımıza saving changes is not permitted hatası veriyor. Bu hatadan dolayı tablodaki değişimler kaydedilmiyor. Çözümü ise çok basittir. Şimdi SQL’inizi açın yukarıdaki menülerden Tools-> Options Seçeneğine gelin. Açılan pencereden Designers-> Table and […]

SQL Ders29- saving changes is not permitted



3 yorum
Bugünkü konumuz SQL veri tabanında bir probleme çözüm getireceğiz. Eğer veri tabanınıza bağlantı yaparken Server adınınız SUMEYRAPC\Sumeyra gibi şeklindeyse yani orada slash(\) işareti kullanılıyorsa normal şeklide bir yazılımdan veri tabanınıza bağlanmak istediğinizde hata verir. Şeklindeki bağlantı cümlesiyle bağlanılmıyorsa bu cümleninin başına @ işaretini koyun. Nokta (.) yerine de kendi server […]

SQL Ders28- Bağlantı Cümlesi Hatası


Merhaba arkadaşlar, Bu ve bundan sonraki birkaç yazımızda SQL server veri tabanı için çok önem arz eden konulara değineceğiz. Bu dersimizde Index kavramından bahsedeceğim. Indexler milyonlarca kaydın arasında aranan kaydın en kısa sürede bulmaya çalışmaktır. Bir DB üzerinde sorgularınız oldukça geç cevap veriyor ise bu yazı yol göstereceğini umuyorum. Açıkça […]

SQL Ders27- Clustered Nedir Nasıl Kullanılır


Veri üzerindeki mantıksal sınırlamalara Constraint(Kısıtlayıcı) denir. Constraint, veri modellerinde bütünlük sağlamak için kullanılır. Tabloların tanımlanmasıyla beraber oluşur. Constraint’ler tablo oluştururken yani CREATE TABLE komutuyla tanımlanabilir. Tablo oluşturulmuşsa ALTER TABLE komutuyla bu işlem gerçekleşir. Constraint Türleri Primary Key Constraint Birincil anahtar kısıtlayıcı anlamındadır. Bir değerin birbirinden farklı yapıda işlemesini sağlaması amacıyla […]

SQL Ders26- Constraint Nedir ve Türleri



Transaction örneğimizi Northwind veri tabanımızdan gerçekleştiriyor olacağız. Bu transaction’ımızda foreign key hatası yüzünden tüm yapılan işlemler geri alınacaktır. Rollback transaction çalışacaktır. Burada küçük bir ayrıntıya değinelim. Bir transaction açıldığı zaman, transaction scope içerisinde değişiklik gören kayıtlar var ise bu kayıtlar lock durumuna alınır. Aksini belirtmediğiniz sürece transaction bitene kadar başka […]

SQL Ders25- Transaction Kullanımı


Transaction, daha küçük parçalara ayrılamayan en küçük işlem yığınına denir. Belirli bir grup işlemin arka arkaya gerçekleşmesine rağmen, işlemlerin toplu olarak değerlendirilmesini sağlar. “Transaction”, prensip olarak ya bütün işlemleri gerçekleştirir ya da hiçbirini gerçekleştirmez. İşlemlerden biri dahi başarısız olursa, bu prensip nedeniyle hiçbir işlem olmamış kabul edilir; ancak tüm işlemler başarılı olduğunda” transaction”, […]

SQL Ders24- Transaction Nedir


Bu konumuzda Trigger’larda instead of kullanımını göreceğiz. Şimdi Araba adında bir tablo oluşturalım. Burada SatildiMi kolonunu default değerini 1 olarak atama işlemini gerçekleştirdik. Oluşturulan tablomuza birkaç kayıt girelim. Şimdi tablomuza bir göz atalım. Gördüğümüz gibi SatildiMi kolonumuz direk olarak 1 sayısını getirdik. Şimdi de bu tablo üzerinde yapılacak bir delete […]

SQL Ders23- Trigger Kullanımı instead of



Öncelikle bu dersimiz için ürün ve sipariş adında iki tablo oluşturalım. Şimdi de bu iki tablo arasındaki ilişkiyi belirtelim. Bu ilişki Sipariş kolonundaki UrunID ile Urun tablosundaki UrunID alanına referans vereceğini belirtelim. Şimdi de Urun tablomuza birkaç veri girişi yapalım. Şimdi de Siparis tablosuna insert yapalım. Ancak siparişi verirken, girmiş […]

SQL Ders22- Trigger Kullanımı 1


1 yorum
Trigger’lar, tablo üzerinde tanımlanabilen ve bu tablo üzerinde bir işlem gerçekleştiğinde tetiklenen programlama ögeleridir. Çalışma mantığı, C#’daki event ile aynıdır. Öncelikle trigger’ları ikiye ayıralım: DDL ve DML trigger’lar. DML ve DDL konusunu bu yazımızda detaylıca göz atmak isterseniz buraya tıklayın. Bu dersimizde DML trigger üzerinde işlemler yapacağız. DML Trigger’ları da […]

SQL Ders21- Trigger Nedir


Öncelikle yazdığımız stored procedure’ler veri tabanın neresinde saklanıyor bu konuyla girişimizi yapalım. Oluşturulan stored procedure’lar  hangi veri tabanında oluşturduysanız onun Programmability->Stored Procedures adı altında toplanıyor olacaktır. Daha önceden oluşturulan ve oluşacak olan stored procedure’ler burada depolanacaklardır. Eğer stored procedure’ları silerseniz burada göremeyeceksiniz. Haydi şimdi bir stored procedure oluşturalım. İlk olarak […]

SQL Ders20- Stored Procedure Kullanımı



Stored procedure’ü genel olarak tanımlarsak; database server ında tutulan ve ilk derlemeden sonra bir daha derlenmeye ihtiyaç duyulmayan SQL ifadeleridir. Veri tabanı server’ında tutulan T-SQL ifadeleri denilebilir. Stored Procedure’ler parametreli, parametresiz ve geriye bir döndürerek de oluşabilir. Stored Procedure’ler oluştururken bunları diğerlerinden ayırt etmek için sp ön ekiyle oluşturulur. Bir […]

SQL Ders19- Stored Procedure Nedir


Truncate ve Delete komutlarının ikisi de bir tabloda bulunan kayıtları silmek için kullanılır. İki komutta sadece belirtilen tablodaki kayıtları siler. En belirgin farkı ise DELETE komutu ile belli bir aralığı silebilirken TRUNCATE komutu ile tablonun tamamı silinmektedir. Aralarındaki fark tabi ki bu kadar da kalmıyor. Aşağıda belirtilen maddelere bir göz atalım. TRUNCATE komutu ile tablo […]

SQL Ders18- Truncate Delete Kullanımı


With encription view nesnelerini şifrelemek Örnek: Seafood kategorisine ait ürünleri listeleyen view oluşturun. Burada views klasörünün altında Kategoriler adında bir view oluşturuldu. Diğerlerinden farklı olarak bu view şifrelendi. Aşağıdaki şekilde görüldüğü üzere design kısmına erişim yasaklandı. Ayrıca öyle bir view oluşturdum ki veritabanında bulunan isimleri de doğrudan bir başka kullanıcı […]

SQL Ders17- View’larda insert, encryption, order by kullanımı



Bizim veri tabanımızda belirli tablolarımız var. Bu tabloları sürekli joinleyerek sürekli aynı sorguları yazarak çekmemiz gerekmiyor. Bu yüzden View’ı bir kere yazıyoruz ve her yerde sorgumuzu kullanabiliyoruz. View bizim için sanal bir tablodur. Bir sürü tabloyu birleştirerek tek bir tablo haline getiriyoruz ve sadece gerektiği yerde view’ı çağırıyoruz. Bizim bir […]

SQL Ders16- Views


Bu dersimizde SQL Server da önem arz eden, bazen çok ihtiyaç duyduğumuz kendi fonksiyonlarımızı nasıl yazacağız bu konuya değineceğiz. Functionlar istenilen değer tipinde dönüş yapabilir. INT, VARCHAR değer döndürebileceğiniz gibi bir tablo da döndürebilirsiniz. Basit bir function ile örnekleyelim konuyu. KDV değerini hesaplayan fonksiyon üzerinden dersimize başlayalım.Fonksiyonlarda bir fiyat parametresi […]

SQL Ders15- Fonksiyon Oluşturma ve Kullanımı


Bu konu için ayrı bir database oluşturduk. SinifDB adında bir veritabanı oluşturun ve iki tane tabloyu aşağıdaki şekil gibi yapın. Burada bire çok ilişki olduğunu görüyoruz. Şimdi tablolarımıza veri girişi ekledik. Burada Şehriban Güngör isimli öğrencimizin sınıf idsi NULL değeri taşımaktadır. Buraya dikkat! Bu iki sınıfı birbirine inner join yaparak […]

SQL Ders14- Left, Right ve Full Outer Join



Daha önceki yazılarımızda northwind veritabanını kullanacağımızı söylemiştik. Sizlerle ortak bir veritabanıyla çalışmak daha akılda kalıcı olduğunu düşündüğümüz için bundan sonra örneklerimiz bu veritabanı üzerinden gidecektir. Northwind veritabanı kurulumu yazımıza buradan oluşabilirsiniz. Örnek 1- Employees yani işçiler tablosunda yer alan adı ve soyadını birleştirerek iki kolon olan sorguyu tek kolonda yazınız. […]

SQL Ders13- Tablolarla Örnekler


Join kelime olarak katılmak anlamındadır. Maksatımız sorgularda iki tablonun bir araya getirilerek tek bir tabloda birleştirme yapmaktır. Biliyorsunuz ki iki tablodan veriler kullanmak istersek mutlaka join işlemi gerçekleştirmek zorundayız. Özetlersek iki tabloyu tek tablo haline getir ve istediğin kolonları kullan diyebiliriz. Joinleme işlemi yaparken birkaç join çeşitleri bulunmaktadır. İnner join […]

SQL Ders12- Joinler


komutu bugünün tarihine 10 gün ekleyerek tarihi yazdırır. komutu bugünün tarihine 1 ay ekler. Komutu iki tarih arasındaki farkı alıyor. Burada yıl farkını almak istedik. Belirttiğimiz tarihten bugünün tarihinin farkını aldık. bugünün tarihini gün formatında döndürüyor. bugünün tarihinin haftanın hangi günde olduğunu verir. Matematik fonksiyonları komutu rastgele sayıları döndürür ve […]

SQL Ders11- Tarih fonksiyonları-2, Matematik fonksiyonları



komutu tarih ve saati detayına kadar bize verir. komutu tarihin sadece yılını verir. komutu şu anki ayın sayısal rakamını veriyor. komutu bugün ayın kaçıysa onu verir. Convert çevirme işlemi yapar. Hangi tipe çevirmek istiyorsun bunu senden ister. Aşağıdaki komutlarla sadece gösterim şekli değişir. Bu komutların hepsini aklınızda tutamayabilirsiniz. En çok […]

SQL Ders10- Tarih fonksiyonları


Veritabanındaki işlemleri DDL – DML – DCL – TCL başlıkları altında bölümlere ayırabiliriz. Bunları biraz inceleyelim. DDL Data Definition Language (DDL) tabloları veritabanı yapısı veya şema tanımlamak için kullanılır. Bunları şu şekilde özetleyebiliriz. CREATE – Veritabanında nesne yaratır. ALTER – Veritabanının yapısını değiştirir. DROP – Veritabanından obje siler. TRUNCATE – […]

SQL Ders9- DDL,DML,DCL,TCL nedir


komutu içindeki ifadenin tamamını büyük harfe çevirir. Komutu içindeki ifadenin tamamını küçük harfe çevirir. komutu 3. İndeksten başlayıp 5 harf yazabilir. Buradaki index mantığı C# daki gibi değildir. 1 den başlar ve devam eder. komutu içindeki ifadenin karakter uzunluğunu verir. komutu Ankara Üniversitesi ifadesindeki Üniversitesi kısmını bul onu University şeklinde […]

SQL Ders8- Upper,Lower,Substring,Len,Replace komutlarının kullanımı



Northwind dediğimiz şey eskiden bir şirketmiş ta ki batana kadar. Battıktan sonra Microsoft şirketin veritabanını almış. Bu veritabanını Microsoft ücretsiz olarak bizlere sunuyor. MS SQL geliştiricilerine ellerinde sağlam bir veritabanı olsun ve sql geliştirmeyi öğrensinler diye veriyor. Bu model üzerinden örneklerimize bundan böyle devam edeceğiz. http://www.microsoft.com/en-us/download/details.aspx?id=23654 adresinden indirerek öncelikle bilgisayarımıza […]

SQL Ders7-Northwind veritabanı kurulumu


Order By Sql sorgusu sonucunda elde edilen veriyi belli kritere göre sıralar ve ORDER BY ifadesi kullanılır. ASC ifadesi ile küçükten büyüğe DESC ifadesi ise büyükten küçüğe doğru sıralar. Eğer ASC veya DESC ifadesi verilmezse sıralama işlemi default olarak ASC yani küçükten büyüğe doğru yapılır. Örnek: Kişiler tablosunun maaşlarını artan […]

SQL Ders6- Fonksiyonlar


AS: Başlıkların alan adları dışında bir isimle görüntülenmesi için AS anahtar kelimesi kullanılır. DISTINCT :çok aynı satırdan varsa veriler tekrar ediyorsa ve yalnızca bir tanesi listelenmesi isteniliyorsa SELECT deyimi DISTINCT anahtar kelimesi ile kullanılır. Örnek; Aynı bölüm isimlerinden sadece birer tanesi listelenmek istenirse, sorgusu yazılmalıdır. Between-And Operatörü İki değer arasında […]

SQL Ders5- Karşılaştırma Operatörleri Devam



Mantıksal Operatörler: İki ya da daha fazla ifade arasında mantıksal sorgu yapmak için kullanılır. () işlemleri gruplandırma işleminde ve öncelik belirlemek için kullanılır AND (VE) her iki ifadenin doğru olması durumunda yapılacak işlem. OR (VEYA) ifadelerden biri doğrunun doğru olması yeterlidir anlamına gelir. NOT (DEĞİL) ifadenin yanlış olması durumunda yapılması […]

SQL Ders4- Mantıksal, Matematiksel ve Karşılaştırma Operatörleri


SELECT: Tablolarda bulunan bilgileri elde etmenin en sık kullanılan biçimidir. Select ifadesi aslında veritabanındaki ifadelerin belli kriterlere uygun olan verileri çekmeye yarar. Sorgu ifadesinde tablonun bütün alanları isteniyorsa * karakteri kullanılmalı. Eğer tabloda belli kolonlardaki bilgiler isteniyorsa, istenilen alanlar aralarına virgül konularak sıralanır. WHERE (Koşul): Select cümlelerinde ekrana getirilen verilerin […]

SQL Ders3- Select, Insert, Update, Delete


SQL komutları kullanarak veritabanına veri ekleme, veri silme, veri güncelleme veya tablo oluşturma ve verileri listeleme gibi tüm sorgu işlemlerini gerçekleştirebilirsiniz. Tüm sorgularımızı New Query sayfamızdan gerçekleştiririz. SQL komutları Bu komut belirtilen databaseAdi isimli bir veritabanı oluşturmaya yarar. Örnek olarak kutuphane isimli bir veritabanı oluşturmak istedik. Aşağıdaki şekilde komutu yazdıktan […]

SQL Ders2- Database ve tablo oluşturma