Murat TATAR God saves lost souls , I save lost passwords

20Nis/110

Sql Tablolarda Değişiklik Yapmak

INSERT (EKLE)

INTO (İÇİNE)

VALUES (DEĞERLER)

ÖRNEK: Bir personel tablosuna sicil_no’su 275 olan personel ile ilişkili bilgileri ekle.

INSERT INTO personel(sicil,
sosy_g_no,ad,soyad,doğ_tar
adres,cins,brüt,böl_no,yön_s_g_no
VALUES(‘275’,’27652418’,’Ali’,’Caner’,
{10/05/1962},’Murat caddesi 46 -Fatih-İstanbul’,
.T.,27000000,2,’876215342’);

DELETE (SİL)

ÖRNEK: 2 no’lu bölümdeki personelin tümü tablodan sil.

DELETE FROM personel
WHERE böl_no = 2;

ÖRNEK: Brüt maaş alani boş olmayan tüm personeli sil.

DELETE FROM personel
WHERE brüt IS NOT NULL;

UPDATE (GÜNCELLE)

SET (YAP)

ÖRNEK: 2’inci bölümün yürüttüğü projelerde kullanılan tüm parçaların fiyatlarına % 7
zam yap.

UPDATE parça
SET fiyat = fiyat *1,07
WHERE pr_no IN
(SELECT proj_no
FROM proje
WHERE bl_no = 2;

CREATE INDEX (INDEKS YARAT )

ON (Hangi Tablo İçin)

CREATE INDEX ındeks adı
ON tablo adı(kolon adı 1,kolon adı 2,.,.kolon adı n);

TEK BİR ALANA GÖRE ARTAN SIRADA İNDEKSLEME :

ÖRNEK: İşletmede çalışan personeli brüt maaşlarına göre artan sırada listele.(Brüt alana göre bir indeks oluşturmalıyız)

CREATE INDEX pers_maas
ON personel(brüt);

127 satırlık personel tablosu ile ilişkili olarak brüt kolonu indeks anahtarı olarak kullanan pers_maas adlı indeks oluşturulmuştur.Bu durumda;

SELECT *
FROM personel;

Şeklinde listeleme komutu sonucunda personel tablosundaki tüm personel, brüt maaşlarina göre sirali olarak listelenecektir.

TEK BİR ALANA GÖRE AZALAN SIRADA İNDEKSLEME:

DESC Küçükten büyüğe (A-Z)

ÖRNEK: İşletmede çalışan personeli brüt maaşlarına göre azalan sırada (yüksek maaştan düşük maaşa doğru)listelemek istersek ,brüt alanına göre aşağıdaki şekilde oluşturmak gerekir.

CREATE INDEX

ON personel (brüt DESC);

BİRDEN FAZLA ALANA GÖRE İNDEKSLEME:

ÖRNEK: İşletmedeki personelin öncelikle adlarına göre,aynı adda olanların soyadlarına göre ,hem adı hemde soyadı aynı olanların maaşlarına göre sıralanmış olarak listele.

CREATE INDEX p_ad_soy_m
ON personel (ad,soyad,brüt);

Bu durumda;

SELECT *
FROM personel;

UNIQUE (TEK)

Bir tablo,seçilen bir sutüna (alana) göre indekslenirken , indeksleme alanı olarak seçilen sutündaki verilerintekrarlanmasına müsaade edilmesi istenmiyorsa,indeksleme yapılırken ,CREATE ,INDEX komutu iinde UNİQUE sözcüğü kullanılmalıdır.

CREATE UNIQUE INDEX pers_sicil
ON personel (sicil);

EKLEME İÇİN:

Personel tablosuna
INSERT INTO Personel
VALUES(53768 ,’27241685’,’ayşe’,
‘şen’{01/04/63},’Merkez cad. 82 -
Kadıköy’.F. ,27000000 ,2, ‘34261578’);

MEVCUT BİR İNDEKSİN SİLİNMESİ:

DROP IPTAL

DROP INDEX pers_in;

Komutu ile

TABLONUN YAPISINDA DEĞİŞİKLİK YAPMAK:

ALTER TABLE (TABLO DEĞİŞTİR)

MEVCUT BİR TABLOYA KOLON EKLEMEK:

ADD (EKLE)

ALTER TABLE (TABLO DEĞİŞTİR) komutu içinde ADD (EKLE) ile satır ekle.

ÖRNEK: Personel tablosuna, işe başlama tarihini belirten bir kolon ekle

ALTER TABLE personel
ADD iş_baş_tar DATE;

ADD (EKLE)iş_baş_tar DATE NOT NULL (TARIH DEGERSIZ) bu şekilde kullanilsaydi bu kolon satiri gene boş kalirdi ; fakat bu kolon ile ilişkili yeni boş degerler eklemek istendiginde buna müsaade edilmeyecekti.

MEVCUT BİR TABLONUN ALANLARINDA DEĞİŞİKLİK YAPMAK :

MODIFY KOMUTU:

MODIFY (DEĞİŞTİR)

MEVCUT BİR TABLODAN BİR KOLON SİLMEK:

DROP KOMUTU:

DROP (İPTAL)

ÖRNEK: Personel tablosundan iş_baş_tar kolonunu sil.

ALTER TABLE personel
DROP iş_baş_tar ;

Birden fazla kolonda silinebilir.Birden fazla kolon silmek için virgülle ayrılarak silinir.

BİR TABLONUN ADINI DEĞİŞTİRMEK:

RENAME KOMUTU:

RENAME (TABLO YENİ AD)

ALTER TABLE personel personel Tablosunda değişiklik yap
RENAME TABLE elemanlar; elemanlar tablosunun adını değiştir

MEVCUT BİR TABLONUN BİR KOLONUNUN ADININ DEĞİŞTİRİLMESİ:

RENAME:

RENAME YENİ AD

ALTER TABLE personel
RENAME brüt br-maaş;

MEVCUT BİR TABLONUN TÜMÜYLE SİLİNMESİ:

DROP TABLE (TABLO SİL)

ÖRNEK: Proje tablosunu sil.

DROP TABLE proje;

   
Copy Protected by Chetan's WP-Copyprotect.