Ana içeriğe atla

Güncel İl, İlçe ve Okullar Listesi (excel ve sql)

Bu Yazımda, en son ve güncel iller, ilçeler ve okullar listesini yayınlıyorum. bu yayında hem excel ve hemde sql sorgularını yayınlanmıştır.

NOT1: il ve ilçeler listesi iç işleri bakanlığının sitesinden alınmıştır. eğer değişiklik olursa bu linkten kendiniz de alabilirsiniz, ancak veritabanına kendiniz yazmanız gerekecektir.

İÇ İŞLERİ BAKANLIĞI - İL ve İLÇELER LİSTESİ

NOT2: Okullar listesi Milli Eğitim Bakalığı sitesinden alınarak Excele aktarılmıştır, daha sonra Excelden Veritabanında eşleşen il ve ilçeri bulunarak doğru bir şekilde kaydedilmiştir. Toplam 3250 Adet okul.

Milli Eğitim Bakanlığı - Okullar Ful Listesi



Tablo düzeni şu şekildedir.

İl, İlçe ve Okul için SQL İlişki diagramı

Yukarıdaki Resimde görüldüğü üzere; Her İl'in (City Tablosu) 0 veya birden fazla İlçesi var, ve her İlçenin 0 veya daha Çok Okulu vardır. Gördüğünüz üzere Okul ve İl arasında bağlantı eklenmemiştir, okul olduğu il zaten ilçe tablosu vasitasiyla belirlenebiliniyor, böylece veri tabanı karmaşıklığı da daha az oluyor.

Tabloların Oluşturma komutu şu şekilde olmalıdır:
City Tablosu:

CREATE TABLE [dbo].[City] (
    [Id]   INT           NOT NULL,
    [Name] NVARCHAR (30) NOT NULL,
    PRIMARY KEY CLUSTERED ([Id] ASC),
    UNIQUE NONCLUSTERED ([Name] ASC)
);

State Tablosu:

CREATE TABLE [dbo].[State] (
    [Id]     INT           NOT NULL,
    [CityId] INT           NOT NULL,
    [Name]   NVARCHAR (30) NOT NULL,
    PRIMARY KEY CLUSTERED ([Id] ASC),
    CONSTRAINT [FK_State_City] FOREIGN KEY ([CityId]) REFERENCES [dbo].[City] ([Id]) ON DELETE CASCADE
);

ve son olarak School Tablosu:

CREATE TABLE [dbo].[School] (
    [Id]      INT            IDENTITY (1, 1) NOT NULL,
    [StateId] INT            NOT NULL,
    [Name]    NVARCHAR (400) NOT NULL,
    PRIMARY KEY CLUSTERED ([Id] ASC),
    CONSTRAINT [FK_School_State] FOREIGN KEY ([StateId]) REFERENCES [dbo].[State] ([Id])
);

Excel Dosyaları:

İller ve İlçeler listesini excel formatında indir :  iller-ve-ilceler-excel.xls


Okul Listesini excel formatında indir: meb-okullar.xls


Okul Listesi Csv formatında indir: meb-okullar.csv



SQL Dosyaları:

İller listesini SQL sorgusu olarak indir: City Tablosı: cities.sql

İlçeler listesini SQL sorgusu olarak indir: State Tablosu: states.sql

Okullar listesini SQL sorgusu olarak indir: School Tablosu: schools.sql


Herhangi bir sorunuz olursa buradan yorum yazabilirsiniz, ayrıca bu veri modeliyle ilgili bir eleştiriniz varsa lütfen bu modeli geliştirmek için yardımcı olun. Teşekkürler, Mesut

Yorumlar

  1. Onlarca site gezdim, senin listen gibisi cikmadi, helal diyorum gidiyorum..

    YanıtlaSil
  2. ilk ve ortaokullar listesine nasıl ulaşabilirim acaba ?

    YanıtlaSil
  3. Sayın Kamil Ünlü, Okul listesinin tamamına maalesef herhangi bir api bulunmamaktadır, Ancak https://mebbis.meb.gov.tr/kurumlistesi.aspx buradan, sanal post yaparak, hepsini toplayabilirsiniz. post method'u ile göndereceğiniz değerler: ddlKurumTuru : "1", "2"
    ddlIl: "1" ~ "81"
    ddlIlce: "0" (yani tüm ilçeler)

    YanıtlaSil
  4. Teşekkür ederim ama dış url ye erişim izni vermiyor

    YanıtlaSil
  5. Kardeşim Eline Sağlık.
    Okul Bilgileri Alma imkanınız Var mı?
    Kurum Adı,Kurum Türü,Adres,Kurum Kodu,Telefon,il,Faks,İlçe,E-mail,Web Sitesi

    YanıtlaSil
  6. ilginiz için teşekkürler, Okul bilgileri için malesef MEB tarafından açılan bir API veya WebService yoktur. Lütfen Kamil Ünlü Bey'e yazdığım açıklamayı okuyunuz.

    YanıtlaSil
  7. www.calismaportali.com15 Aralık 2022 23:47

    Gerçekten iyi iş çıkarmışsınız mesut hocam.

    YanıtlaSil

Yorum Gönder

Bu blogdaki popüler yayınlar

C# ve Asp.net MVC'de Çok katmanlı Soğan mimarisi (Onion Architecture)

Çok katmanlı mimari, güçlü ve kolay geliştirelebilen ve katmanlarının kolaylıkla değiştirilebilen büyük uygulamalarda çok önemli bir rol oynar. Eski ve en ünlü çok katmanlı mimari, 3 katmandan oluşmakta Data Access Layer - Veri Katmanı Business Process Layer - İş Modeli Katmanı Presentation Layer - Kullanıcı Arayüzü Katmanı  Bu mimaride, Kullanıcı Arayüzü Katmanı sadece ve sadece İş Modeli Katmanıyla iletişimdedir, ve Veri Katmanıyla direk iletişime geçmesine izin verilmiyor, böylece hem güvenlik sağlanıyor, hem de bir katman değiştirilmek istendiğinde diğer katmanlarda minimum değişiklikle bu işlem yapılabiliyor. bu mimari her ne kadar küçük ölçekli uygulamalarda başarılı olsa da, daha büyük ve karmaşık uygulamalarda yetersiz kalmaktadır. Geleneksel Katmanlı Mimari Onion Architecture veya Soğan mimarisi Jeffrey Palermo tarafından onerilmiştir. bu mimaride her katman soğan halkaları gibi düşünülmüş olup kolaylıkla değiştirilebilmesi veya düzenlenmesi amaçlanmıştır. bu mim

C# ve Asp.net MVC'de Çok katmanlı Soğan mimarisinde (Onion Architecture) Asp.Net Identity Kullanımı

Bir önceki makelemde (Buraya Tıklayınız)   Soğan mimarisini oluşturduk ve Ninject kullarak Katmanlar arasında bağımsızlığı sağladık. Bu makalede ise ASP.NET Identity 2.x kullanarak Güvenlik ve Üye yönetimini katmanlı mimaride nasıl sağlayabileceğimizi göstereceğim. bu makalede amaç ASP.NET Identity hakkında bilgi vermek veya nasıl kullanıldığını anlatmaktan ziyade, bir katmanlı mimaride katmanlar arası ilişkiyi bozmadan ASP.NET Identity'yi kullanıma sunulmasıdır. Sorun Nedir? Yeni bir web uygulaması oluşturulduğunda ve üye yönetimi olarak ASP.NET Identity kullanıldığında varsayılan olarak veri tabanı erişimini doğrudan PL katmanından ayarlamaktadır, ancak katmanlı mimaride PL katmanın veri tabanına veyahut DAL katmanına doğrudan erişmesi yasaklanmıştır. ASP.NET Identity'nin çalışabilmesi için IdentityDbContext 'i geliştirmiş bir Context (Entity Framework) sınıfına ihtiyaç duyar. Önemli Not: ASP.NET Identity varsayılan olarak EF kullanarak veri tabanına erişim