0% found this document useful (0 votes)
4 views5 pages

2 SQL

Uploaded by

qk687sbgt5
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views5 pages

2 SQL

Uploaded by

qk687sbgt5
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

SQL SERVER

SQL SERVER bilinen serverlar gibi çalışır. Server olduğundan dolayı da üzerinde
birçok yapıyı barındırıp hizmet verebilir. Bu yapılardan biri de veritabanıdır. Veritabanı
hizmeti alınabilmesi için bütün programlama dillerinde olduğu gibi öncelikle Server’a
bağlanmalıdır. Server’a bağlandıktan sonra veritabanı üzerinde işlemler
gerçekleştirilebilir. Sizlere SQL SERVER ‘ın bir Server tipi olan Database Engine’i üzerinde
konuları anlatılacaktır. Kullandığımız editör ise SS Management Studio dur. Önce sizlere
veritabanı nedir kullanım amaçları nedir bunları anlatalım. Bir veritabanı dar anlamıyla,
verilerin girilip saklandığı ve kullanılması istendiğinde ait olduğu tablolardan alındığı
yapıları barındıran bir sistemdir. Sayısal ve metinsel, Multimedya, jeografik, gerçek
zamanlı ve aktif ve veri ambarı türünde veritabanları bulunmaktadır.

Veritabanı oluştururken temel amaçlarımız; tekil yada çoklu kullanıcılı kullanım


şekli oluşturmak, gereksiz tekrarları ortadan kaldırmak, belli bir disiplin ve düzenle
saklama yöntemi oluşturmak, birbiriyle ilişkili tablolar oluşturmak ve sürekli ve
güncellenen veri sunumları sağlamaktır.

Unutulmaması gereken bazı terimleri de açıklayalım. SQL bir sorgu dilidir, MySQL
bir veritabanı yönetim sistemidir, MS SQL Server Management Studio ise bir veritabanı
editörüdür. Bu editör kullanılarak T-SQL komutları kullanılarak veri düzenleme, raporlama
veya analiz işlemleri gerçekleştirilebilir.

MySQL ile SQL SERVER kullanım farklılıkları nedir? MySQL ile SQL SERVER aynı
işleve sahiptirler ancak kendilerine has kullanım alanları vardır. Çalışmaları ve yazılımları
farklı olmasına rağmen her ikisi de SQL’i baz alır. Bu yüzden de veri depolama, tablo
kullanımı, key referansları, tekil ortam veya sunucu taraflı çoklu kullanımlar gibi birçok
benzerlikleri vardır.

MySQL ücretsiz ve açık kaynak olduğu için tercih edilir ancak APACHE web
sunucusu veya PHP ile birlikte kullanılır. SQL SERVER ise veritabanları üzerinde
çalışacağımız bir ortamdır. Çalışma motorları (derleyicileri) bakımından farklılıklar
gösterse de yapısal olarak SQL SERVER kendi ortamında veritabanı uygulamalarının
yapılmasına izin veren RDBMS((İlişkisel Veritabanı Yönetim Sistemi)dir. MySQL
LAMP(Linux, Apache, MySQL,Perl/PHP/Python) web servis grubunun bir bileşenidir. Birçok
veritabanı odaklı web uygulamasında kullanılır. Google, Facebook,Twitter MySQL
kullanmaktadır.

MySQL anlatmadan önce SQL SERVER Management Studio hakkında bilgi verelim,
Management Studio bir editör olup tablo işlemleri için veritabanı bağlantısı yapıp sonra
tablo işlemlerine geçilmesi ve işlemleri gerek manuel gerekse kodlarla yerine getirecek
ortam sağlar.

SQL SERVER’a bağlantı sağlarken kurulum aşamasında bilgisayarınızın kimlik


bilgisi default değer olarak atanır. Eğer kullanıcı adı tanımlanmışsa o da bağlanma
penceresinde karşınıza çıkar. Eğer daha genel şekilde bağlanmak isterseniz “.”,
“.\”,”localhost”, yada “(local)” ifadeleri ile bağlanmak mümkündür. Buradaki “.” (nokta)
ana makineyi temsil etmektedir.

Yetkilendirmede(Autentication) iki tip yetkilendirme olacaktır; Windows ve SQL


Server yetkilendirme. Windows Autentication seçilirse yerel makine üzerinde yani
programın çalıştığı makine üzerindeki ayarların geçerli olduğu kabul edilir ve o ayarlarla
yetkiler dahilinde işlemler gerçekleştirilir. SQL Server autentication da ise uzak bir
makinenin Server’ına bağlanılmak istendiğinde tercih edilir. Bu işlemde Login ve
password bilgileri giriş için [Link] Server yetkilendirme ile bağlanılacaksa haliyle o
Server Name alanına uzaktaki makinenin Server adresini yazmamız gerekecektir.

SQL SERVER Management Studio programına Windows Autentication ile


bağlandıktan sonra Bir veritabanı ve ona bağlı tablo/ilişkili tablolar oluşturmak
gerekecektir. Oluşturulan bu veri yapılarını oluşturmak, düzenlemek, özellik vermek,
kullanıcı tanımlayıp izinler oluşturmak ve tablolar üzerinde işlemler yapmak için komutlar
vardır. Bu komutlar temelde üç tiptir; DDL(Data Definition Language), DCL(Data Control
Language) ve DML(Data Manipulation Language). DCL komutlarını kullanıcı ve
yetkilendirme işlemleri kısmında anlatılacak, DDL veritabanı ve tablo oluşum ve
düzenlemeleri için kullanılacaktır ve DML komutları ise tablo içerisine aktarılacak veriler
ile ilgili işlemlerde kullanılır. Anlatım sırası DDL, DML ve DCL komutları şeklinde olacaktır.

DDL (Data Definition Language)

Nesneler (Veritabanı, tablo, View, trigger vs.) üzerinde işlemler yapmak için
kullanılan komut türleridir. Üç adet komutu vardır. CREATE, ALTER, DROP.

CREATE : Tasarladığınız veritabanı sistemi içerisinde veritabanı, tablo, view, stored


procedure, trigger gibi yapıları oluşturmak için kullanılır.

Komut formatı: CREATE nesne_tipi nesne_adı

-Veritabanı oluşturmak;

Create Database Yeniogrenci

-Özellik vererek veritabanı oluşturmak istenirse;

Create database öğrenci

On

Name=’ogrenci’,

filename=’c:\[Link]’,

size=10,

filegrowth=5

-Tablo oluşturma

Tablolar veritabanları içerisinde oluşturulduğundan “use” komutu ile hangi tablo


kullanılacağı deklere edilir, sonrasında tablolar alan ad ve özellikleri ile oluşturulur.

Use ogrenci

Create table ornekogrenci

Ad nvarchar(MAX),
No int,

Tarih datetime )

Görüldüğü gibi alan adları alana aktarılacak verilerin tipleri ile birlikte tanımlanmaktadır.
Alan adları bir değişken gibi düşünülebilir. Her programlama dilinde değişken
tanımlamayla ilgili kısıtlamalar T-SQL de de bulunmaktadır. Bir defa en çok yapılan hatalar
Türkçe karakter kullanımı ile alan adlarını birden fazla kelimeyle tanımlama aşamasında
araya boşluk bırakmaktır. Eğer alan adı verirken illa iki kelime ve aralarında boşluk olsun
istenirse alan adını [] (köşeli parantez) içerisinde tanımlamak gerekir.

Tabloların manuel oluşumunda dikkatsizlikle gözden kaçma gibi insan hatalarının


oluşması normaldir. Komutlarla bunlar düzeltilebilir.

-Alan adı iki kelime olursa


Use ogrenci
Create table ornekogr
(
[Ad Soyad] nvarchar(MAX),
No int,
Tarih datetime,
)

Kayıtların tekrarlı olmaması için primary key tanımı yapılır. Primary key tanımı yaparken
tanımlanan tablo alanı unique(benzersiz) olma özelliğine sahip olmalıdır. Okul numarası,
telefon numarası, TC kimlik numarası gibi bilgileri Primary Key özelliği verilebilen bilgiler
olarak kullanabiliriz.

-OkulNo alanı Primary Key olarak atanmış öğrenci veritabanına bağlı ornogr isimli bir tablo
oluşturalım
Use ogrenci
Create table ornogr
(
OkulNo decimal(11,0) Primary Key Identity(22720700001,1),
[Ad Soyad] nvarchar(MAX),
bolum nvarchar(MAX)
)
Identity Primary Key in tanımlanması için kullanılır. İlk parametresi başlangıç değeri
ikincisi ise artım değeridir.

ALTER : CREATE komutu ile oluşturulmuş nesnelerin üzerinde düzenleme yapmak için
kullanılır.

Komut formatı: ALTER nesne_tipi nesne_adı

-ogrenci isimli veritabanının başlangıç değerini ve otomatik artım değerini değiştirelim

alter database ogrenci


modify file
(
name='ogrenci',
size=20,
filegrowth=10
)

-ogrenci veritabanındaki ornekogr tablosuna bolum isimli yeni bir alan ekleyelim
use ogrenci
alter table ornekogr
add bolum nvarchar(MAX)
-ogrenci veritabanındaki ornekogr tablosundaki bolum isimli alanın özelliklerini
düzenleyelim
use ogrenci
alter table ornekogr
alter column bolum nvarchar(25) not NULL

-ogrenci veritabanındaki bolum isimli alanı tablodan silelim


use ogrenci
alter table ornekogr
drop column bolum

DROP : Halihazırda varolan nesnelerin silinmesini sağlar. Dikkat edilmesi gereken şey
silinecek olan nesnenin kullanılıyor olmamasıdır.

Komut formatı: DROP nesne_tipi nesne_adı


drop database ilkVT
drop table ornekogrenci

Bu yapılanlar yapısal değişiklikler yada düzenlemelerdir. Eğer tasarladığınız ve


hatta veri girişi yaptığınız bir tablo veya tablonun bir alanının ismi üzerinde değişiklik
yapmak isterseniz DDL komutları yetersiz kalırlar. Bir tablonun yada bir tablo alanının ismi
üzerinde değişiklik yapmak için sp_rename sistem prosedürü kullanmak gerekecektir.
Tablo yada tablo alanı(sütunu) adını değiştirmesine göre komut satırı değişkenlik gösterir.
Tablo adını değiştirme:

Create database Teknik


Go
Use Teknik
Go
Create table bolumler
(
Bolumadi nvarchar(max)
)
exec sp_rename ‘bolumler’ , ‘birimler’

Eğer aynı tablo içerisinde ‘Bolumadi’ alan adını değiştirmek isteseydik

Create database Teknik


Go
Use Teknik
Go
Create table bolumler
(
Bolumadi nvarchar(max)
)
exec sp_rename ‘[Link]’ , ‘Bolumadlari’ , ’column’ şeklinde komut
satırımız olur.

You might also like