Yandex Metrica
SQL Server Synonym Nedir ve Nasıl Kullanılır? - Yasin Sunmaz

Yasin Sunmaz

Kodladıkça değişen bir dünya...

SQL Server Synonym Nedir ve Nasıl Kullanılır?

09.01.2026 yasinsunmaz 159 0

Bu yazımda SQL Server'da oldukça faydalı olan synonym yapısını inceleyeceğiz. Veritabanı projelerinde zamanla tablo isimleri uzar, şema yapıları değişir veya farklı veritabanlarına bağımlılıklar oluşur. Bu noktada kodu daha okunabilir ve sürdürülebilir hale getirmek için SYNONYM (eş anlamlı) yapısı devreye girer.

SQL Server’da SYNONYM nedir, neden kullanılır, nasıl oluşturulur, nerelerde avantaj sağlar ve dikkat edilmesi gereken noktalar nelerdir adım adım inceleyeceğiz.

Synonym Nedir?

SYNONYM, veritabanındaki bir nesneye (table, view, stored procedure, function vb.) verilen alternatif bir isimdir (alias).

Yani bir nesnenin kendisini değiştirmeden, ona farklı bir isimle erişmemizi sağlar.

Gerçek nesne yerinde durur, SYNONYM sadece bir yönlendirme (pointer) görevi görür. Veritabanındaki tabloları başka yere taşıdığınızda Synonym ile sorgularda değişiklik yapmadan hızlıca kullanmamıza olanak sağlar.

SYNONYM Hangi Nesneler İçin Kullanılabilir?

SQL Server’da aşağıdaki nesneler için SYNONYM oluşturabilirsiniz:

  • Table

  • View

  • Stored Procedure

  • Function (Scalar / Table-Valued)

  • Sequence

  • Hatta başka bir veritabanındaki nesneler

  • Linked Server üzerindeki nesneler

Neden SYNONYM Kullanılır?

Kod Okunabilirliğini Artırmak

Uzun ve karmaşık nesne isimlerini sadeleştirir.

SELECT * 
FROM ERP_PROD_DB.dbo.Products_2024_Active

yerine:

SELECT * FROM Urunler

Bağımlılıkları Azaltmak

Eğer tablo ismi veya veritabanı değişirse:

  • Tüm sorguları değiştirmek yerine

  • Sadece SYNONYM’i güncellemek yeterlidir

Çoklu Veritabanı / Mikroservis Senaryoları

Farklı veritabanlarına erişen uygulamalarda:

  • Kod aynı kalır

  • Hedef veritabanı SYNONYM üzerinden değiştirilebilir

SYNONYM Nasıl Oluşturulur?

Products Tablosu İçin SYNONYM Oluşturma

CREATE SYNONYM Urunler
FOR Products

Artık Products tablosuna Urunler adıyla erişebiliriz.

SYNONYM Üzerinden Sorgulama

SELECT * FROM Urunler u

SQL Server bu sorguyu otomatik olarak Products tablosuna yönlendirir.

Başka Bir Veritabanı Üzerinden SYNONYM Oluşturma

CREATE SYNONYM Urunler
FOR SalesDB.dbo.Products

Stored Procedure İçin SYNONYM Oluşturma

CREATE SYNONYM GetUrunler
FOR dbo.sp_GetProducts

Kullanımı

EXEC GetUrunler

SYNONYM Silme

DROP SYNONYM IF EXISTS Urunler

Bu işlem sadece SYNONYM’i siler, gerçek tabloya zarar vermez.

Bir SYNONYM’i değiştirmek için:

Synonym değiştirme veya düzeltme işlemi yoktur. O yüzden öncelikle var olan Synonym silinir sonrasında tekrar istenilen şekilde oluşturulabilir.

 Performans

  • SYNONYM performans kaybı oluşturmaz

  • SQL Server çalışma anında SYNONYM’i çözümler

  • Ekstra join veya işlem yoktur

 Intellisense ve Dependency Takibi

  • SSMS Intellisense bazen SYNONYM’leri geç algılayabilir

  • Dependency tracking (bağımlılık analizi) SYNONYM’lerde zayıftır

SYNONYM Ne Zaman Kullanılmamalı?

  • Küçük ve tek veritabanlı projelerde

  • Gereksiz soyutlama yaratıyorsa

  • Gerçek tabloyu gizlemek yerine yanlış anlaşılmaya yol açıyorsa

SYNONYM, SQL Server’da güçlü ama sade bir özelliktir. Kod okunabilirliğini ve esnekliği sağlayarak ciddi avantajlar sağlayabilir.

Umarım faydalı olmuştur. İyi çalışmalar!

  • Yorum yapabilmek için giriş yapmalısınız. Giriş yapmak için tıklayınız.

Diğer Yazılar

SQL Server Schema Kullanımı

10.12.2025 yasinsunmaz 201 0

Bu yazımda SQL Server'da oldukça faydalı olan schema yapısını inceleyeceğiz. SQL Server’da şema yapısı özellikle orta ve büyük ö...

SQL Server'da SELECT INTO ve INSERT INTO SELECT Kullanımı

31.05.2025 yasinsunmaz 577 0

Bu yazımda, SQL Server'da oldukça sık kullanılan ve günlük veri işlemlerinde hayat kurtaran iki komutu inceleyeceğiz: SELECT INTO ve INSERT INTO SELECT. Bu ...

SQL Server'da LAG() ve LEAD() Kullanımı

23.05.2025 yasinsunmaz 562 0

Bu yazımda SQL Server'da oldukça faydalı olan LAG() ve LEAD() fonksiyonlarını inceleyeceğiz. Bu fonksiyonlar, bir satırdaki veriye bakarken, o satırın öncesindeki v...

SQL Fonksiyonları: Veritabanlarında Güçlü ve Esnek İşlemler

09.06.2023 yasinsunmaz 1500 0

SQL (Structured Query Language), veritabanı yönetim sistemlerinde verileri yönetmek, sorgulamak ve işlemek için yaygın olarak kullanılan bir dildir. SQL fonksiyonl...