Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
YayınlayanΠολυξένη Ιωάννου Değiştirilmiş 6 yıl önce
1
Öğretim Görevlisi Alper Talha Karadeniz Veri Tabanı 1
2
SQL (Structured Query Language)
SQL bir programlama dili değildir. Yapısal sorgulama dilidir. Kullanıcılar SQL aracılığı ile veri tabanlarına iletişim sağlarlar. İlişkisel Veri tabanı yönetim sistemlerinin hepsi bu dili kullandığı için bir standart haline gelmiştir. SQL komutları kullanılarak , veri tabanına kayıt ekleme, kayıt silme, kayıt değiştirme, tablo oluşturma gibi birçok işlem gerçekleştirilir.
3
Standart SQL ifadelerinde fonksiyon döngü ve karşılaştırma ifadeleri gibi programlamaya yönelik ifadeler yoktur. Bu sorunu çözmek için veri tabanı sistemlerinde PL/SQL (oracle) ve T-SQL (Microsoft) geliştirilmiştir. Bunlarda da standart SQL ifadeleri aynen geçerlidir. SQL komutları DML, DDL ve DCL olmak üzere üç kategoride incelenmektedir.
4
DML (Data Manipulation Language)
Veri işleme dilidir. Bu kategorideki SQL komutları veriler üzerinde işlemler yapmaya yönelik ifadeleri içermektedir. Tablolara ait kayıtlar için sorgulama, ekleme, silme ve değiştirme gibi işlemler yapılabilmektedir. SELECT Sorgu için kullanılır INSERT Yeni bir kayıt yapmak için kullanılır. UPDATE Kayıt üzerinde değişiklik yapmak için kullanılır. DELETE Kayıt silmek için kullanılır.
5
Insert(Ekle) Yeni bir kayıt eklemek için kullanılır.
Primary key alanı otomatik olarak doldurulduğu zaman burada o alana değer girilmez. Ancak otomatik olarak doldurulmuyorsa, burada değer girilmek zorundadır. Not null ve primarykeyi otomatik doldurmayan alanlar dışındaki alanlara istemediğimiz taktirde veri girişi yapmayabiliriz. insert into yonetici (adi,soyadi) values ('alper','karadeniz')
6
INSERT INTO Departman (dep_ID,dep_Adi,yon_ID,yer) VALUES (300,'Oracle DBA',200,3200); INSERT cümlesi yazarken sütun isimleri yazmak zorunda değiliz. Ancak bu durumda tabloda bulunan bütün sütunlara sırası ile veri girişi yapılmalıdır. INSERT INTO Departman VALUES (500,'Java',200,3200);
7
Update(Güncelle) Aşağıda ki SQL sorgusuyla Personel tablosunda ki maaş sütununda ki bütün verileri yüzde on artırdı. UPDATE Personel SET maas=maas*110/100; Aşağıda ki SQL sorgusuyla personel tablosunda adi sütunu Ali olan verilerin maaş sütunundaki verileri yüzde on artırdı. (Where koşul ifadesidir.) UPDATE personel SET maas=maas*110/100 WHERE adi like 'Ali';
8
Delete(Sil) NOTLAR tablosundaki 2007 ve 2008 ders yılına ait bütün kayıtları silen Sql kodu: DELETE FROM NOTLAR WHERE DERS_YILI = ‘ ’ NOTLAR tablosundaki tüm kayıtları silmek için kullanılan Sql kodu: DELETE FROM NOTLAR
9
Select(Sorgu) SELECT ifadesi ile yazılan sorgular, veri tabanından kayıt getirmemize yarar. Veri tabanında en çok kullanılan ifadedir. Yazım kuralı: SELECT sütun(yada sütunlar) FROM Tablo (yada tablolar) WHERE Seçim kriteri Eğer yapacağımız sorguda herhangi bir koşul yani kriter yoksa, WHERE ifadesi yazılmaz. Bu durumda tüm kayıtlar seçilir.
10
SELECT ad FROM personel ( personel tablosundaki bütün adları sırası ile getirir.)
SELECT ifadesinden sonra herhangi bir sütun ismi değil de “*” ifadesi kullanılıyorsa tüm sütunlar seçilir. SELECT * FROM personel—veri tabanında kayıtlı olan bütün sütunlar ve bütün kayıtlar ekrana gelir. Maaşı 1800 TL’nin üzerinde olan personelin ADI ve SOYADINI görmek istiyorsak aşağıdaki SQL sorgusunu yazarız. SELECT AD, SOYAD FROM PERSONEL WHERE MAAS > 1800
11
Aşağıdaki SQL cümlesi görevi müdür olan ve maaşı 5000 TL’den fazla olan personeli gösterir:
SELECT * FROM PERSONEL WHERE GOREV = ‘Müdür’ AND MAAS > 5000 SELECT * FROM PERSONEL WHERE AD LIKE ‘E*’ (Adı E ile başlayan devamı önemli olmayan tüm kayıtları getirir) Başlangıcının ne olduğu önemli değil ancak sonu Edirne olacak. Bura da dikkat edilmesi gereken Edirne birebir aynı yazılmalıdır. SELECT * FROM ÖĞRENCİLER WHERE ADRES LIKE ‘*Edirne’
12
DDL (Data Definition Language)
Veri tanımlama dilidir. Bu kategorideki SQL komutları ile veritabanları, tablo, görünüm ve indekslerin oluşturulması, silinmesi ve değişikliklerin yapılması gibi işlemler yapılabilmektedir. Verinin ne olduğundan çok tutulan verinin tipi ile ilgilenir. Veri tabanında hangi tablolar olacak, tablolarda hangi alanlar olacak, alanların türleri ne olacak, anahtar alanlar olacak mı ? işte bu soruların cevaplarıyla DDL ilgilenir.
13
CREATE Nesne oluşturmak için kullanılır
ALTER Nesneler üzerinde değişiklik yapmak için kullanılır. DROP Nesneleri silmek için kullanılır.
14
) CREATE DATABASE SIRKET CREATE TABLE Departman
( DepartmanID int IDENTITY (1, 1) NOT NULL, DAdi nvarchar (20) default (‘’), KurulusTarihi smalldatetime NOT NULL CONSTRAINT PK_Departman PRIMARY KEY CLUSTERED ( DepartmanID ) )
15
CREATE TABLE Personel (
PersonelId int NOT NULL , TCKimlikNo char (11) NOT NULL , Adi varchar (30) NOT NULL , Soyadi varchar (50) NOT NULL , Maas decimal(10,2) NOT NULL DEFAULT (0), PDepartmanId int NOT NULL , Cinsiyet char (1) NULL , CONSTRAINT PK_Personel PRIMARY KEY CLUSTERED(PersonelId), CONSTRAINT CK_Personel CHECK (Cinsiyet = 'K' or Cinsiyet = 'E') )
16
drop database SIRKET -- Artık kullanılmayacak olan veri tabanını silmek için kullanılır.
drop table MUSTERI -- tabloyu silmek için kullanılır.
17
Tabloya sonradan sütün eklemek için; ALTER TABLE Personel ADD babaAdi nvarchar(20) Tabloya sonradan primarykey eklemek için; ALTER TABLE Tablo_adı ADD PRIMARY KEY (Alan_adı) Tabloda ki belirli bir alanın tipini yada ismini değiştirmek için; Alter Table Tablo_Adi Alter Column Adi Varchar(20) Tabloda ki bir alanı silmek için; Alter Table Personel Drop Column Adi
18
DCL (Data Control Language)
Veri kontrol dilidir. Bu kategorideki SQL komutları ile veritabanlarına yönelik olarak kullanıcılara erişim yetkilerinin verilmesi veya engellenmesi gibi işlemler yapılabilmektedir. Grant, Deny, Revoke
19
KAYNAKLAR Turgut Özseven-Veri tabanı yönetim sistemleri kitabı
ORACLE veri tabanı eğitimi notları Prof. Dr. Ümit Kocabıçak Sakarya üniversitesi Veri tabanı ders notları.
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.