Kenan kılıçaslan

  • Baca Hesabı
  • Sürtünme Kaybı
  • Diferansiyel Denklem
  • Denklem Çözümü
SQL Server

MsSQL Server Veritabanı oluşturmak

0- SQL dilinde açıklama satırı.

-- Bir satırlık açıklama için kullanılır

/* */ Çok satırlı açıklama için kullanılır

1- MsSQL Server Veritabanı oluşturmak

Sql Server’daki veritabanının genel davranışı günlük yaşamdaki bir fabrikanın deposuna benzetebiliriz. Örneğin fabrika yeni kurulduğunda 1000 m2 depo alanı olduğunu düşünelim. Bu depo alanı üretim yapıldıkça dolacak, ürünler sevk edildikçe boşalacaktır. Eğer fabrikanın üretim kapasitesinin arttığını düşünelim. Bu durumda depolama ihtiyacı artacaktır. Artık mevcut depo alanı ihtiyacı karşılamayacaktır. Bu durumda neler olabilir? Birinci seçenek mevcut depo alanını büyütmek, ikinci seçenek yeni depo yeri bulmak, üçüncü seçenek ise üretimi durdurmaktır.(Yani hata mesajı vermek)

İşte Sql Server’da yukarıdaki örneğe uygun çalışmaktadır. Biz bir veritabanı oluştururken bir başlangıç kapasitesi koyarız. Bir süre sonra bu depo alanı dolar. Dolduğu zaman yapılacaklar yukarıdaki ile aynıdır. Ya mevcut dosyanın kapasitesi artırılacak, ya da veritabanına yeni bir dosya eklenecek veya bu ihtiyaç karşılanmaz ise hata mesajı verecek.

Veri Tabanı Oluşturmak

1.1- En basit ifade

Genel ifade; aşağıdaki kod tüm özellikler model veritabanı ile aynı olan bir veri tabanı oluşturur. Bu ifadenin çalışması için istenilen isimde bir veritabanı olmamalıdır.

CREATE DATABASE veritabanıAdı

Yukarıdaki kod ile “C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data” klasöründe iki adet dosya oluşur. Bu dosyalardan birinin adı “ veritabanıAdı.mdf ” adında data dosyası, diğeri ise “ veritabanıAdı_log.ldf ” adında log dosyalarıdır.

1.2 - Model veritabanından farklı özellikte data dosyası oluşturma

CREATE DATABASE veritabanıAdı   ON (dosya özellikleri) 

Dosya özellikleri

NAME = mantıksalDosyaAdı, -- Kullanımı zorunlu

FILENAME = ‘Dosyanın işletim sistemindeki adı’, -- Kullanımı zorunlu bu komut çalıştırılmadan önce data dosyasının bulanacağı klasörlerin mevcut olup olmadığını denetleyiniz.

SIZE = uzunluk, -- Kullanılmaz ise model db’nin uzunluğu varsayılır. Yazım şekli örneğin 50KB (Kilobayt), 50MB(Megabayt),50GB(Gigabayt), 50TB (Terabayt) şeklindedir. Eğer bildirilmez ise yani sadece 50 yazılırsa bu değer 50MB olarak algılanır.

MAXSIZE=maksimumUzunluk , -- SIZE ile belirtilen uzunlukta veri geldiğinde yani veritabanı dolduğunda veritabanı otomatik olarak büyüyecektir. Bu büyümenin üst sınırı KB, MB, GB, TB vs. birim ile bildirilir. Veya sınırsız büyümesi istenirse maksimumUzunluk yerine UNLIMITED yazılır.

FILEGROWTH = artışmiktarı -- Veri tabanı dolduğunda büyüyecektir. Bu büyümenin yani artışın ne kadar olacağı bu değer ile bildirilir. Artış miktarı yukarıdaki gibi, KB,MB,GB,TB olarak veya % olarak bildirilir.

Örnek 1:

“Kutuphane” adında bir veritabanı oluşturunuz. Bu veritabanına bağlı dosyanın mantıksal adı (yani sql server’ın dosya üzerinde işlem yaparken kullandığı ad.) “Kutuphane” olsun . “C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\ Data\Kutuphane.mdf ” adında fiziksel dosyaya kaydedilsin. Başlangıç uzunluğu 50 MB olsun, veritabanı dolduktan sonra %5 büyüsün. Ve veritabanın en fazla 200 MB’a kadar büyüsün.

USE master
Go
CREATE DATABASE Kutuphane ON (
    NAME=Kutuphane,
    FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\Kutuphane.mdf',
    SIZE = 50MB, MAXSIZE=200MB, FILEGROWTH=5%)
GO

Örnek 2:

“Kutuphane1” adında bir veritabanı oluşturunuz. Bu veritabanına bağlı dosyanın mantıksal adı (yani sql server’ın dosya üzerinde işlem yaparken kullandığı ad.) “Kutuphane1” olsun. “C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\ Data\Kutuphane.mdf ” adında fiziksel dosyaya kaydedilsin. Başlangıç uzunluğu 50 MB olsun, veritabanı dolduktan sonra 5MB büyüsün. Maksimum uzunluğu limitsiz olsun.

USE master
Go
CREATE DATABASE Kutuphane1 ON (
    NAME=Kutuphane1, 
    FILENAME=’C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\Kutuphane.mdf’,
    SIZE = 50MB, MAXSIZE=UNLIMITED, FILEGROWTH=5MB)
Go

1.3 - Model veritabanından farklı özellikte log dosyası oluşturma

CREATE DATABASE veritabanıAdı   
    LOG ON (dosya özellikleri)

Dosya özellikleri için Bölüm-1.2’ye bakınız.

Örnek 3:

Örnek 1’deki soruya , mantıksal adı Kutuphane_log fiziksel adı “C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\Kutuphane_log.ldf ” ve uzunluğu 10 MB lık bir log dosyası ile oluşturunuz.

USE master
Go
CREATE DATABASE Kutuphane ON (
        NAME=Kutuphane, 
        FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\Kutuphane.mdf',
        SIZE = 50MB, MAXSIZE=200MB, FILEGROWTH=5%)
    LOG ON (
        NAME=Kutuphane_log,
        FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\Kutuphane_LOG.mdf',
        SIZE = 10MB)
GO

1.4 - Model veritabanından farklı özellikte birden fazla dosya bağlamak

Genel ifade;

CREATE DATABASE veritabanıAdı   
    ON (dosya özellikleri), (dosya özellikleri), ...
    LOG ON (dosya özellikleri), (dosya özellikleri), ...

Örnek 4:

Hem C sürücüsünde hem de D sürücüsünde Kutuphane adında klasör oluşturunuz. Mantıksal adı Kutuphane1 ve Kutuphane2 olan uzunluğu 10 MB olan iki dosya yı Kutuphane veritabanına ekleyiniz

USE master
Go
CREATE DATABASE Kutuphane ON 
    (NAME=Kutuphane1, FILENAME='C:\Kutuphane\Kutuphane1.mdf' , SIZE = 10MB),
    (NAME=Kutuphane2, FILENAME='D:\Kutuphane\Kutuphane2.mdf' , SIZE = 10MB)
GO
beyaz_sayfa_en_alt_oval