-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDay5_ALTER_TABLE.sql
More file actions
95 lines (64 loc) · 3.41 KB
/
Day5_ALTER_TABLE.sql
File metadata and controls
95 lines (64 loc) · 3.41 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
USE sys;
/*=============================== ALTER TABLE ==================================
ALTER TABLE tabloda ADD, MODIFY, veya DROP/DELETE COLUMNS islemleri icin
kullanilir.
ALTER TABLE ifadesi tablolari yeniden isimlendirmek (RENAME) icin de
kullanilir.
==============================================================================*/
CREATE TABLE personel
(
id int PRIMARY KEY ,
isim VARCHAR(50),
sehir VARCHAR(50),
maas int,
sirket VARCHAR(20)
);
INSERT INTO personel VALUES(123456789, 'Ali Yilmaz', 'Istanbul', 5500, 'Honda');
INSERT INTO personel VALUES(234567890, 'Veli Sahin', 'Istanbul', 4500, 'Toyota');
INSERT INTO personel VALUES(345678901, 'Mehmet Ozturk', 'Ankara', 3500, 'Honda');
INSERT INTO personel VALUES(456789012, 'Mehmet Ozturk', 'Izmir', 6000, 'Ford');
INSERT INTO personel VALUES(567890123, 'Mehmet Ozturk', 'Ankara', 7000, 'Tofas');
INSERT INTO personel VALUES(456715012, 'Veli Sahin', 'Ankara', 4500, 'Ford');
select * from personel;
/* -----------------------------------------------------------------------------
ORNEK1: personel tablosuna ulke_isim adinda ve default degeri 'Turkiye' olan
yeni bir sutun ekleyiniz.
------------------------------------------------------------------------------*/
alter table personel
add ulke_isim varchar(20) default 'TURKİYE';
/* -----------------------------------------------------------------------------
ORNEK2: personel tablosuna cinsiyet Varchar2(20) ve yas Number(3) seklinde
yeni sutunlar ekleyiniz.
------------------------------------------------------------------------------*/
ALTER TABLE personel
add (cinsiyet varchar(20), yas int);
/* -----------------------------------------------------------------------------
ORNEK3: personel tablosundan sirket sutununu siliniz.
------------------------------------------------------------------------------*/
alter table personel
drop column sirket;
select * from personel;
/* -----------------------------------------------------------------------------
ORNEK4: personel tablosundaki ulke_isim sutununun adini ulke_adi olarak
degistiriniz.
------------------------------------------------------------------------------*/
alter table personel
rename column ulke_isim to ulke_adi;
/* -----------------------------------------------------------------------------
ORNEK5: personel tablosunun adini isciler olarak degistiriniz.
------------------------------------------------------------------------------*/
alter table personel rename to isciler;
select * from isciler;
/* -----------------------------------------------------------------------------
ORNEK6: isciler tablosundaki ulke_adi sutununa NOT NULL kisitlamasi ekleyiniz
ve veri tipini VARCHAR(30) olarak değiştiriniz.
------------------------------------------------------------------------------*/
alter table isciler
modify ulke_adi varchar(30) not null;
-- =======================
-- maas limit kisitlamasi ekle
alter table isciler add constraint check (maas >= 3500);
-- Maas alt limit kisitlamasi atadik.
-- kisitlama atadiktan sonra maasin 3500 altinda olmasi sebebiyle
-- alttaki veriyi giremeyiz
INSERT INTO isciler VALUES(123452310, 'Hatice Sahin', 'Bursa', 3000, null);