İlk 50 SQL Server Mülakat Sorusu & Yanıtlar

Anonim

PDF İndir

1. SQL Server'daki iki kimlik doğrulama modu nedir?

İki kimlik doğrulama modu vardır -

  • Windows Modu
  • Karışık mod

Modlar, SQL Server yapılandırma özelliklerinin araçlar menüsü seçilerek ve güvenlik sayfası seçilerek değiştirilebilir.

2. SQL Profiler nedir?

SQL Profiler, sistem yöneticisinin SQL sunucusundaki olayları izlemesini sağlayan bir araçtır. Bu, esas olarak analiz için bir dosyanın veya bir tablonun her bir olayı hakkındaki verileri yakalamak ve kaydetmek için kullanılır.

3. Özyinelemeli saklı yordam nedir?

SQL Server, kendi kendine çağıran özyinelemeli saklı yordamı destekler. Özyinelemeli saklı yordam, çözüme tekrar tekrar ulaşılan bir problem çözme yöntemi olarak tanımlanabilir. 32 seviyeye kadar yuvalanabilir.

CREATE PROCEDURE [dbo].[Fact](@Number Integer,@RetVal Integer OUTPUT)ASDECLARE @In IntegerDECLARE @Out IntegerIF @Number != 1BEGINSELECT @In = @Number - 1EXEC Fact @In, @Out OUTPUT - Same stored procedure has been called again(Recursively)SELECT @RetVal = @Number * @OutENDELSEBEGINSELECT @RetVal = 1ENDRETURNGO

4. Yerel ve genel geçici tablolar arasındaki farklar nelerdir?

  • Yerel geçici tablolar bir bağlantı olduğunda görünür ve bağlantı kapatıldığında silinir.
CREATE TABLE #
  • Global geçici tablolar tüm kullanıcılar tarafından görülebilir ve onu oluşturan bağlantı kapatıldığında silinir.
CREATE TABLE ##

5. CHECK kısıtlaması nedir?

Bir sütuna yerleştirilebilecek değerleri sınırlamak için tablodaki bir sütuna bir KONTROL kısıtlaması uygulanabilir. Kontrol kısıtlaması bütünlüğü güçlendirmek içindir.

6. SQL sunucuları diğer sunuculara bağlanabilir mi?

Bir bağlantı vermek için OLE-DB sağlayıcısı olan herhangi bir veritabanına SQL sunucusu bağlanabilir. Örnek: Oracle, SQL sunucu grubuna bağlanmak için bağlantıya sahip OLE-DB sağlayıcısına sahiptir.

7. Alt sorgu ve özellikleri nedir?

Alt sorgu, Select, Update, Insert veya Delete ifadeleri gibi bir ana sorgunun içine yerleştirilebilen bir sorgudur. Bu, ifadeye izin verildiğinde kullanılabilir. Alt sorgunun özellikleri şu şekilde tanımlanabilir:

  • Bir alt sorgu maddeye göre sıraya sahip olmamalıdır
  • Ana sorgunun karşılaştırma operatörünün sağ tarafına bir alt sorgu yerleştirilmelidir
  • Bir alt sorgu, ana sorgudan önce ilk olarak yürütülmesi gerektiğinden parantez içine alınmalıdır.
  • Birden fazla alt sorgu dahil edilebilir

8. Alt sorgu türleri nelerdir?

Üç tür alt sorgu vardır -

  • Yalnızca bir satır döndüren tek satırlı alt sorgu
  • Birden çok satır döndüren birden çok satır alt sorgusu
  • Ana sorguya birden çok sütun döndüren birden çok sütun alt sorgusu. Bu alt sorgu sonucu ile Ana sorgu çalıştırılacaktır.

9. SQL sunucu aracısı nedir?

SQL Server aracısı, SQL sunucu yöneticisinin (DBA) günlük görevlerinde hayati bir rol oynar. Sunucu aracısının amacı, işlerimizin planlanan tarih ve saatte çalışmasını sağlayan zamanlayıcı motoru ile görevleri kolayca uygulamaktır.

10. SQL Server'da zamanlanmış görevler nelerdir?

Zamanlanmış görevler veya işler, düzenli aralıklarla planlanmış bir zamanda çalıştırılabilen süreçleri otomatikleştirmek için kullanılır. Bu görev planlaması, gece saatlerinde insan müdahalesini azaltmaya yardımcı olur ve yem belirli bir zamanda yapılabilir. Kullanıcı ayrıca oluşturulması gereken görevleri de sipariş edebilir.

11. SQL Server'da COALESCE nedir?

COALESCE, bağımsız değişkenler içindeki ilk boş olmayan ifadeyi döndürmek için kullanılır. Bu işlev, bağımsız değişkenlerdeki birden fazla sütundan boş olmayan bir değeri döndürmek için kullanılır.

Misal -

Select COALESCE(empno, empname, salary) from employee;

12. SQL Server Programlamada istisnalar nasıl ele alınabilir?

İstisnalar, TRY ---- CATCH yapıları kullanılarak ele alınır ve TRY bloğu içine komut dosyaları yazarak ve CATCH bloğundaki hata işleme ile ele alınır.

13. KAT işlevinin amacı nedir?

FLOOR işlevi, tamsayı olmayan bir değeri önceki en küçük tam sayıya yuvarlamak için kullanılır. Örnek verilmiştir

FLOOR(6.7)

6 döndürür.

14. Veritabanındaki kilitleri kontrol edebilir miyiz? Öyleyse, bu kilit kontrolünü nasıl yapabiliriz?

Evet, veritabanındaki kilitleri kontrol edebiliriz. Sp_lock adı verilen yerleşik saklı yordam kullanılarak elde edilebilir.

15. İŞARET işlevinin kullanımı nedir?

İŞARET işlevi, belirtilen sayının Pozitif, Negatif ve Sıfır olup olmadığını belirlemek için kullanılır. Bu + 1, -1 veya 0 döndürür.

Misal -

SIGN(-35) returns -1

16. Tetikleyici nedir?

Tetikleyiciler, ekleme veya güncelleme veya silme komutları bir tabloya karşı yürütüldüğünde bir toplu SQL kodu çalıştırmak için kullanılır. Veriler değiştirildiğinde tetikleyiciler otomatik olarak tetiklenir veya yürütülür. Ekleme, silme ve güncelleme işlemlerinde otomatik olarak gerçekleştirilebilir.

17. Tetikleyici türleri nelerdir?

Dört tür tetikleyici vardır ve bunlar:

  • Ekle
  • Silme
  • Güncelleme
  • Onun yerine

18. insert deyimlerinde IDENTITY sütunu nedir?

KİMLİK sütunu, bu sütunu Otomatik artan sayı veya vekil anahtar olarak yapmak için tablo sütunlarında kullanılır.

19. SQL'de Bulkcopy nedir?

Toplu kopyalama, Tablolardan büyük miktarda veri kopyalamak için kullanılan bir araçtır. Bu araç, SQL Server'a büyük miktarda veri yüklemek için kullanılır.

20. Bir veritabanındaki tetikleyicilerin listesini almak için sorgu ne kullanılacaktır?

Veritabanındaki tetikleyicilerin listesini almak için sorgu-

Select * from sys.objects where

21. UNION ve UNION ALL arasındaki fark nedir?

  • BİRLİK: İlgili bilgileri iki tablodan seçmek için UNION komutu kullanılır. JOIN komutuna benzer.
  • UNION All: UNION ALL komutu, UNION ALL komutunun tüm değerleri seçmesi dışında UNION komutuna eşittir. Yinelenen satırları kaldırmaz, bunun yerine tüm tablolardan tüm satırları alır.

22. Global geçici tablolar nasıl temsil edilir ve kapsamı?

Global geçici tablolar, tablo adından önce ## ile temsil edilir. Kapsam, oturumun dışındayken, yerel geçici tablolar oturumun içindedir. Oturum kimliği @@ SPID kullanılarak bulunabilir.

23. Depolanan Prosedür ile dinamik SQL arasındaki farklar nelerdir?

Depolanan Prosedür, derlenmiş bir biçimde depolanan bir dizi ifadedir. Dinamik SQL, çalışma zamanında dinamik olarak oluşturulmuş bir dizi deyimdir ve bir Veritabanında depolanmaz ve yalnızca çalışma süresi boyunca yürütülür.

24. Harmanlama nedir?

Harmanlama, bir tablodaki sıralama düzenini belirtmek için tanımlanır. Üç tür sıralama düzeni vardır -

  1. Harfe duyarlı
  2. Büyük / Küçük Harfe Duyarlı Değil
  3. İkili

25. Bir tablodaki kayıtların sayısını nasıl alabiliriz?

Bir tablodaki kayıtların sayısını elde etmek için kullanılabilecek sorgular aşağıdadır -

Select * from 
 Select count(*) from 
 Select rows from sysindexes where id=OBJECT_ID(tablename) and indid<2

26. SQL Server sürümünü almak için kullanılan komut nedir?

Select SERVERPROPERTY('productversion')

SQL Server'ın sürümünü almak için kullanılır.

27. UPDATE_STATISTICS komutu nedir?

UPDATE_STATISTICS komutu, büyük miktarda silme veya değişiklik olduğunda veya dizinlerde toplu kopya oluştuğunda tablolardaki dizinleri güncellemek için kullanılır.

28. SET NOCOUNT ON / OFF ifadesinin kullanımı nedir?

Varsayılan olarak NOCOUNT, KAPALI olarak ayarlanmıştır ve komut her yürütüldüğünde etkilenen kayıtların sayısını döndürür. Kullanıcı etkilenen kayıtların sayısını görüntülemek istemezse, açıkça ON- (NOCOUNT ON SET) olarak ayarlanabilir.

29. Depolanan yordam betiklerini tutmak için hangi SQL sunucu tablosu kullanılır?

Sys.SQL_Modules, saklı yordamın komut dosyasını depolamak için kullanılan bir SQL Server tablosudur. Depolanan yordamın adı Sys.Procedures adlı tabloya kaydedilir.

30. SQL Server'daki Sihirli Tablolar nelerdir?

Ekle, Sil ve Güncelle gibi DML işlemleri sırasında SQL Server, DML işlemleri sırasında değerleri tutmak için sihirli tablolar oluşturur. Bu sihirli tablolar, veri işlemi için tetikleyicilerin içinde kullanılır.

31. SQL Server'da SUBSTR ve CHARINDEX arasındaki fark nedir?

SUBSTR işlevi, belirli bir dizedeki dizenin belirli bir bölümünü döndürmek için kullanılır. Ancak CHARINDEX işlevi, belirli bir dizede karakter konumunu verir.

SUBSTRING('Smiley',1,3)

Smi olarak sonuç verir

CHARINDEX('i', 'Smiley',1)

Dizenin 3. konumunda göründüğüm için sonuç olarak 3 verir

32. Nasıl oturum açabilirsiniz?

Giriş oluşturmak için aşağıdaki komutu kullanabilirsiniz

CREATE LOGIN MyLogin WITH PASSWORD = '123';

33. ISNULL () operatörü nedir?

ISNULL işlevi, sql sunucusunda verilen değerin NULL olup olmadığını kontrol etmek için kullanılır. Bu işlev ayrıca bir değerin NULL ile değiştirilmesini sağlar.

34. FOR Clause'nin kullanımı nedir?

FOR cümlesi esas olarak XML ve tarayıcı seçenekleri için kullanılır. Bu madde, esas olarak sorgu sonuçlarını XML biçiminde veya tarayıcıda görüntülemek için kullanılır.

35. Tablo başına maksimum indeks sayısı ne olacaktır?

SQL Server 2008 için 100 Dizin, tablo başına maksimum sayı olarak kullanılabilir. SQL Server'da tablo başına 1 Clustered Index ve 999 non-clustered index kullanılabilir.

1000 Endeksi tablo başına maksimum sayı olarak kullanılabilir. SQL Server'da tablo başına 1 Clustered Index ve 999 non-clustered index kullanılabilir.

SQL Server'da tablo başına 1 Clustered Index ve 999 non-clustered index kullanılabilir.

36. COMMIT ve ROLLBACK arasındaki fark nedir?

COMMIT yürütüldüğünde, BEGIN ve COMMIT arasındaki her ifade veritabanında kalıcı hale gelir. BEGIN ve ROOLBACK arasındaki her ifade, ROLLBACK yürütüldüğünde durumuna geri döndürülür.

37. Varchar ve nvarchar türleri arasındaki fark nedir?

Varchar ve nvarchar aynıdır, ancak tek fark, nvarhcar'ın birden çok dil için Unicode karakterlerini depolamak için kullanılabilmesi ve ayrıca varchar ile karşılaştırıldığında daha fazla yer kaplamasıdır.

38. @@ SPID'nin kullanımı nedir?

@@ SPID, geçerli kullanıcı işleminin oturum kimliğini döndürür.

39. Depolanan yordamı çalışma zamanında yeniden derlemek için kullanılan komut nedir?

Kayıtlı Prosedür, RECOMPILE adlı anahtar kelime yardımıyla yürütülebilir.

Misal

Exe  WITH RECOMPILE

Veya WITHRECOMPILE'ı saklı yordamın kendisine dahil edebiliriz.

40. SQL Server'da yinelenen satırlar nasıl silinir?

Yinelenen satırlar SQL Server'ın CTE ve SATIR NUMARASI özelliği kullanılarak silinebilir.

41. SQL Server kullanıcı adları ve parolaları SQL Server'da nerede saklanır?

Kullanıcı Adları ve Parolalar sys.server_principals ve sys.sql_logins'de saklanır. Ancak parolalar normal metin olarak saklanmaz.

42. GETDATE ve SYSDATETIME arasındaki fark nedir?

Her ikisi de aynıdır ancak GETDATE milisaniyeye kadar süre verebilir ve SYSDATETIME nanosaniyeye kadar hassasiyet verebilir. SYSDATE TIME, GETDATE değerinden daha doğrudur.

43. Veriler bir tablodan diğerine nasıl kopyalanabilir?

SEÇİME EKLE

Bu komut, önceden oluşturulmuş bir tabloya veri eklemek için kullanılır.

İÇERİĞİ SEÇİN

Bu komut, yeni bir tablo oluşturmak için kullanılır ve yapısı ve verileri mevcut tablodan kopyalanabilir.

44. TABLESAMPLE nedir?

TABLESAMPLE, uygulama için gerekli olan rasgele sıra örneklerini çıkarmak için kullanılır. Alınan örnek satırlar, satırların yüzdesine dayanmaktadır.

45. Kullanıcı tanımlı hata mesajları için hangi komut kullanılır?

RAISEERROR, belirli bir oturum için hata işlemeyi oluşturmak ve başlatmak için kullanılan komuttur. Bu kullanıcı tanımlı mesajlar sys.messages tablosunda saklanır.

46. ​​XML Veri Türü ile ne kastedilmektedir?

XML veri türü, XML belgelerini SQL Server veritabanında saklamak için kullanılır. Sütunlar ve değişkenler oluşturulur ve XML örneklerini veritabanında depolar.

47. CDC nedir?

CDC, yakın zamanda değiştirilen verileri yakalamak için kullanılan Change Data Capture olarak kısaltılmıştır. Bu özellik SQL Server 2008'de mevcuttur.

48. SQL enjeksiyonu nedir?

SQL enjeksiyonu, kötü amaçlı kodun, ayrıştırma ve yürütme için bir SQL sunucusu örneğine geçirilebilen dizelere eklenebildiği kötü niyetli kullanıcılar tarafından gerçekleştirilen bir saldırıdır. Tüm ifadeler, aldığı tüm sözdizimsel olarak geçerli sorguları yürüttüğü için güvenlik açıklarını kontrol etmelidir.

Parametreler bile yetenekli ve deneyimli saldırganlar tarafından değiştirilebilir.

49. SQL enjeksiyon saldırısına karşı korunmak için kullanılan yöntemler nelerdir?

SQL enjeksiyon saldırısına karşı korunmak için kullanılan yöntemler şunlardır:

  • Depolanan Prosedürler için Parametreleri Kullanın
  • Giriş parametrelerini filtreleme
  • Dinamik SQL ile Parametre koleksiyonunu kullanın
  • Benzer cümlede, kullanıcı kaçış karakterleri

50. Filtrelenmiş Dizin nedir?

Filtrelenmiş Dizin, sorgu performansını, dizin bakımını iyileştirmek ve dizin depolama maliyetlerini düşürmek için bir tablodaki satırların bir kısmını filtrelemek için kullanılır. Dizin WHERE yan tümcesi ile oluşturulduğunda, Filtrelenmiş Dizin olarak adlandırılır.