Posts Tagged :

table

Kolon Adını Tablolarda Aramak 150 150 mezo

Kolon Adını Tablolarda Aramak

Merhaba arkadaşlar
Uzun zamandır bir konu anlatmıyorum ancak hatalar ve düzeltilmeleri ile ilgili yazılar paylaşıyorum en kısa zamanda bir kaç güzel konu ile karşınızda olacağım 🙂
Sizlere bahsetmek istediğim kısa konum SQL de Kolon Adını Tablolarda Aramak: Diyelim ki database içersinde sadece kolon adını biliyorsunuz veya kolon adının içinden bir kelime hatırlıyorsunuz hangi tabloda merak ediyorsunuz işte size güzel bir sorgu 🙂 Bu sorgu ile kolon adına göre tablo araması yapabilirsiniz. İşte o sorgu 🙂

select TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME
from INFORMATION_SCHEMA.COLUMNS
where COLUMN_NAME like '%aranacak_kelime%'
and TABLE_CATALOG='Database_Adi'

Umarım yararlı olur
Bilgiyle Kalın
M.Zeki OSMANCIK

MSSQL Database Terminolojisi 150 150 mezo

MSSQL Database Terminolojisi

Merhaba arkadaşlar bu yazımızda veritabanı ile alakalı bazı terimleri sizlere açıklamaya çalışacağım.

VeriTabanı (Database):Verilerin fiziksel hafızada saklandığı  datafiles ve bu verilerin olaylarının loglandığı log dosyalarından oluşan en az 2 dosyadan oluşan yapıları SQL Server VeriTabanı (Database) olarak değerlendirir.

Schema (Şema):Bir veritabanı içersinde yaratılan farklı  schemalar içersinde aynı isimde tablolar ,store procedureler gibi farklı nesneler yaratabilmek mümkün oluyor böylelikle database içersindeki nesneleri gruplara ayırarak çalışmayı kolaylaştırabiliyoruz.

Table (Tablo) :Günlük hayatta kullandığımız liste mantığı ile oluşturduğumuz nesnelerdir.Yani bir sınıf listesinden tutun alışveriş listesine kadar tüm listeleri tablo olarak tanımlayabiliriz. Teknik olarak bakarsakta satır ve sütunlardan oluşan veri saklayabilen veritabanının en temel nesnesi diyebiliriz.

ResultSet (Sonuç Kümesi): Bir seçme ve listeleme  işlemi gerçekleştiğinde bazen bir bazen birden fazla tablo kullanılarak hazırlanan ve veritabanı üzerinde mevcut olmayan tabloların hepsi birer sonuç kümesidir.

Row (Satır): Tablo üzerinde mevcut olan her bir kayıt bir satıra denk gelir.

Column(Sütun): Tablolarda dikey sütunların yanyana gelmesi ile meydana gelmiştir. Bir ürün tablosunu ele alacak olursan her ürün bir satır bu ürünün her bir bilgiside sütundur.

Field (Alan): Yapılandırılmış  bilginin her bir kısmını saklamak üzere yapılan tanımlamadır. Bu alanın uzunluğu ne kadar olacak harf ise ne kadar harf alabilir, rakam ise kaç basamaklı olacak bu türden soruları yanıtlamak için bir alan tanımlamak ve bu alanada bir veri tipi belirtmemiz gerekir.

Data Type (Veri Tipi): Bilgisayar kayırları yapısal olarak tutarken onların yapıları hakkında fikir sahibi olabilmek için bazı özellikleri önceden tanımlanması gerekir. İşte bu özellikleri belirten tipler veri tipleridir.

Record (Kayıt) : Yapılandırılmış verilerden her birine bir kayıt denir.  Yani alan bilgileri ile birlikte her bir satır kayıttır.

Constrait (Kısıtlayıcı) : Herhangi bir alan içersine girilebilecek bilgileri zorlayıcı kurallara denir. Birincil Anahtar Kısıtlayıcı , Tekill Kısıtlayıcı , Default Kısıtlayıcı, Yabancı Anahtar Kısıtlayıcı, Kontrol Kısıtlayıcı olmak üzere 5 tür kısıtlayıcı vardır.

Default  : Tabloda bir alana değer girilmediğinde bu alan için standart olarak önceden bizim belirttiğimiz bir veri veya verinin ilk giriş işlemi esnasında otomatik olarak  bu sütuna atanması.

Rule (Kural):Bir alana girilebilecek verilerin bir kurala bağlı olmak üzere girilmeye zorlanması için yapılan tanımlamalara denir.

Indexes (İndeksler) : Bir kaç yüz kayıttan oluşan bir tablo üstüne kayıt arama işlemi veritabanı yönetim sistemi için oldukça basit bir işlemdir ancak bu sayı milyonlara çıktığında çeşitli kriterlere bağlı olarak organize edip sıralayacak bu sayede hızlı erişimi sağlayacak yapılar vardır. Veriler fiziksel olarak düzenleniyorsa CLUSTERED INDEX (Kümelenmiş), fiziksel olarak düzenlenmiyorsa UNCLUSTERED  INDEX(Kümelenmemiş) adını alır.

View : Bazen hazırlanan sorguların veya elde edilen sonuç kümelerinin bir tablo gibi davranması istendiğinde View kullanılarak bu sanal tablo oluşturulur.

Synonim : View den farklı olarak tablolar dışındaki store procedureler gibi nesnelerede takma adlar verebilmemizi sağlar.

Stored Procedure (Kaydedilmiş Yordamlar) : SQL kodları çalıştırılmadan önce veritabanı yönetim sistemi tarafından yorumlanır ve derlenir  ardından çalıştırılmak istenen kod çalışır ve sonuç kümesi elde edilir. Bu işlem sırasındaki yorumlama ve derleme kısmı veritabanı yönetim sistemine ek bir yük getirir. Bunu hızlandırabilmek için derlenmiş ve yorumlanmış ifadeleri kullanabiliriz. Bu derlenmiş ifadeler Stored Procedurelerdir. Genellikle veri erişim katmanı olarak kodlanırlar.

Cursor (İmleç) : Veritabanında bulunan kayıtlara satır satır erişmek istediğimizde bu işi bizim yerimize imleçler halleder. İmleçler genellikle veritabanı üzerindeki verilere baım yapılırken kullanılırlar.

Trigger (Tetikleyici) : Triggerler veritabanı üzerindeki veriler ile ilgili ekleme, silme , düzenleme gibi işlemler yerine veya bu işlemlerden sonra otomatik olarak yapılacak olan işlemlerin belirtildiği yapılardır.  Veri bütünlüğünü sağlamak amacıyla kullanılırlar.

UDF User Defined Functions (Kullanıcı Tanımlı Fonksiyonlar) : UDF ler genellikle karmaşık işlemlerin  tek bir sefer fonksiyon olarak kaydedilip daha sonra sadece isimleri ile çağrılabilen bir yapıdır. Stored Procedure lerden tek farkı select sorguları içersinde onların bir parçası gibi kullanılabilmeleridir.

User Defined Types  (Kullanıcı Tanımlı Tipler): SQL server 2005 den itibaren 8K yi aşmamak için kendi gereksinimlerimizi  giderebilmek için oluşturduğumuz kendine özgü metotlarıda içersinde bulundurabilen tiplerdir.

Umarım yararlı olur

Sonraki yazılarda görüşmek üzere …

M.Zeki Osmancık

TSQL _ Select 387 260 mezo

TSQL _ Select

Merhaba Arkadaşlar . Bu yazımızda TSQL den bahsetmek istiyorum.  Veritabanı programları ile uğraşanların yada biz programcıların sürekli kullandığı hatta bazen baş belası olabilen bu SQL neymiş ona bakalım.

SQL (Structured Query Language) yani Yapılandırılmış  Sorgulama Dili anlamına gelen veritabanı sorgulama dilidir. SQL, düzeltilmesi veya değiştirilmesi istenen bilgileri açıkça belirtmeye izin veren ve yerine getirilebilecek başlıca işlemleri tanımlamamızı sağlayan bir komut takımıdır

Sql deki kodları :

Veri İşleme Dili – DML (Data Manipulation Language )

Veri Tanımlama Dili – DDL (Data Definition Language)

Veri Kontrol Dili  – DCL(Data Control Language)

Olarak gruplayabiliriz.

Bu gruplar içersinde hangi kodlar var peki?

Veri İşleme Dili – DML (Data Manipulation Language )

SQL Veri İşleme Dili veri girmek, değiştirmek, silmek ve verileri almak için kullanılan DML komutlarının tümüdür.

SELECT : Veri seçmek

DELETE : Veri silmek

UPDATE : Veri güncellemek

INSERT : Veri girmek

Veri Tanımlama Dili – DDL (Data Definition Language)

SQL Veri Tanımlama Dili verilerin tutulduğu nesneler olan tabloların yaratılmasını, silinmesini ve bazı temel özelliklerinin düzenlenmesini sağlar.

CREATE TABLE : Yeni bir tablo yaratmak

ALTER TABLE : Tabloda değişiklik yapmak

DROP TABLE : Tabloyu silemek

CREATE INDEX : Tabloda dizin oluşturmak

Veri Kontrol Dili  – DCL(Data Control Language)

SQL Veri Kontrol Dili bir veritabanı kullanıcısı veya rolü ile ilgili izinlerin düzenlenmesini sağlar.

GRANT :Kullanıcıya yetki vermek

DENY:Kullanıcı, grup veya rolü herhangi bir eylem için engeller.

REVOKE:Daha atanmış olan yetki veya engeli kaldırır.

Veritabanında Arama İşlemleri

Bir veritabanı içersindeki bilgilerimiz arasında belli kriterlere uygun yada bir rapor şeklinde bir arama gerçekleştirmek istiyorsak  kullanmamız gereken kod  Select olmalıdır.

Select ifadesi bir tablodan verileri seçmek için kullanılır. Elde edilen veriler sonuç kümesi olarak adlandırılır ve yine bir tablo görüntüsü şeklinde görüntülenir.

Söz dizimi:

Tüm alanları görüntülemek istemediğimiz zamanlarda kolon adı belirterek istenilen bilgiler çekilebilir.

SELECT <görüntülenmek istenen kolonlar> FROM <tablo adı>

Tüm alanları göstermek istediğimiz durumlarda kolon adı yerine * kullanılır.

SELECT * FROM <tablo adı>

Şimdi birlikte bir örnek yapalım. Northwind veritabanı içersinde bulunan herhangi bir tablonun bilgilerini önce tablo ismi ile sonra * ile çağıralım.

Verilerimizi tablo ismi ile yada * simgesiyle hepsini getiriyoruz. Süper ama bir sorun var  yada sorundan çok bir eksik demeliyiz belkide belli kriterlere uyan bilgileri getirmek istediğimde ne yapmam gerekir ?

Böyle bir durumdada yardımımıza WHERE yantümcesi koşuyor. WHERE yantümcesi görüntülemek istediğimiz verileri belirli bir kritere göre seçebilmemizi sağlar.

Yazımı

SELECT <sütun adı> FROM <tablo adı> WHERE <koşul(lar)>

Yani WHERE yantümcesi diyor ki bana istediğin kriteri söyle NERDE eşleşen varsa alayını getireyim sana diyor. Ama bu kriterleri hangi operatörlerle sağlarız birde onu belirtelimki sadece eşittir işaretinden ibaret olduğu anlaşılmasın.

İşte WHERE yantümcesi ile kullanabileceğimiz operatörler

Bizde teşekür edip bir örnek yaparak Where yantümcesi istediğini veriyoruz.

Bu kez müşteriler tablosundayız ve Madrid deki müşterilerimizi görmek istiyoruz.

Nasıl Where yantümcesi işini iyi yapıyor değilmi 😀

WHERE yantümcesinin  operatörlerinden bahsetmiştik orada herşey güzel anlaşılır matematiksel şeyler var ama 2 operatör varki kafa karıştırabilir.  LIKE ve BETWEEN  bunlarında nasıl kullanıldığına kısaca deyinelim

LIKE

LIKE kelimesi sütundaki değerlerin, joker karakterler kullanılarak oluşturduğumuz bir arama koşulu ile karşılaştırılmasını sağlar.

SELECT <kolon adı> FROM <tablo adı>

WHERE <aranacak sütun> LIKE <kriter>

Örnek arama koşulları:

LIKE ‘BR%’                          İlk iki harfi BR olan tüm kayıtlar

LIKE ‘Br%’                           İlk iki harfi Br olan tüm kayıtlar

LIKE ‘%een’                       Son üç harfi een olan tüm kayıtlar

LIKE ‘%en%’                      İçerisinde en ifadesi geçen tüm kayıtlar

LIKE ‘_en’                           Son iki harfi en olan üç harften oluşan tüm kayıtlar

LIKE ‘[CK]%’                       C veya K harfleriyle başlayan tüm kayıtlar

LIKE ‘[S-V]ing                    ing ile biten ve ilk harfi S ile V harfleri arasında olan dört harfli herhangi kelime

LIKE ‘M[^c]%’                   M ile başlayan ikinci harfi c olmayan tüm kayıtlar

BETWEEN..AND

BETWEEN … AND operatörü 2 değer ile belirtilen aralığı sınar. Bu değerler sayı, metin veya tarih olabilir.

SELECT <kolon adı> FROM <tablo adı>

WHERE <sütun adı> BETWEEN <değer 1> AND <değer 2>

Umarım faydalı olmuştur bir başka yazıda görüşmek dileği ile ….

M.Zeki Osmancık

    Join our Newsletter

    We'll send you newsletters with news, tips & tricks. No spams here.