VERİTABANI YÖNETİM SİSTEMLERİ 6-SQL Server-3-DDL
Create Komutu Uygulamaları CREATE DATABASE GUNDUZ USE Gunduz CREATE TABLE Ornek ( Ad varchar(10), Soyad varchar(20), Boy tinyint, Dogtar smalldatetime ) Sorgunun çalıştırılacağı ilgili veritabanı seçimi yapılmalıdır. Ya SQL koduyla ya da açılır kutudan. (Master içerisinde çalıştırmayın ! ! !) F5’e basın «Commands Completed Successfully» mesajı görüldüyse işlem tamamlanmıştır. Management Studio’dan tabloyu görüp veri girişi yaparak test edin. Create komutunun görevi, ilgili veritabanında daha önceden olmayan belirli bir isimdeki nesneyi (tablo, view, user, constraint,…) oluşturmaktır. Aynı veritabanındaki farklı tablolarda kullanılıyor olsalar bile aynı isimli constraintler oluşturulamaz.
Create Komutu Uygulamaları CREATE TABLE Personel1( Perno smallint not null, Tckimlikno varchar(11) not null, Ad varchar(10) not null, Soyad varchar(15) ) CREATE TABLE Personel2 ( Perno smallint identity(1,1), Dept char(3) not null
Create Komutu Uygulamaları CREATE TABLE Personel3 ( Tckimlik char(11) primary key, AdSoyad varchar(15) not null, Dogtar smalldatetime ) CREATE TABLE Hesaplama( ilk integer, Son integer, Ortalama as (ilk+son)/2, Toplam as (ilk+son)
Create Komutu Uygulamaları CREATE TABLE Personel4 ( Perno smallint identity(100,1), Ad varchar(10), Kayittar datetime constraint df_kayittar default (getdate()), Dogyer varchar(15) constraint df_dogyer default (‘Duzce’) ) CREATE TABLE Personel5 ( Cins char constraint ck_cins check(cins in (‘E’,’K’)), Dept char(3) constraint ck_dept check( dept in (‘MUH’,’ARG’,’SAT’)), Kilo tinyint
Create Komutu Uygulamaları CREATE TABLE Personel6 ( Perno smallint identity(1000,1) Primary key, Ad varchar(10), Dogtar smalldatetime constraint df_dogtar default (getdate()) constraint ck_dogtar check(dogtar<=getdate()), Boy tinyint constraint ck_boy check(boy>0 and boy<=250) ) CREATE TABLE Urunler( Urunkodu varchar(3) contsraint ck_urunkodu check(urunkodu like ‘[A-K][0-9][0-9]’), Maliyet smallmoney constraint df_maliyet default (0) constraint ck_maliyet check(maliyet>=0)
Create Komutu Uygulamaları CREATE TABLE Ornek2 ( Perno smallint identity(10,1) constraint birincil primary key, Ad varchar(20) ) CREATE TABLE Personel7( perID int not null Unique, Ad varchar(50), Soyad varchar(50), Unique(perID) veya Constraint tekil Unique (perID)
Create Komutu Uygulamaları CREATE TABLE Notlar( Ogrno int not null, Derskodu varchar(10) not null, Vize int Constraint ck_vize CHECK( Vize>=0 and Vize<=100), Final int Constraint ck_final CHECK( Final>=0 and Final<=100) , Constraint Pk_Birinciller PRIMARY KEY (ogrno, derskodu) )
Create Komutu Uygulamaları CREATE TABLE Notlar( Ogrno int not null, Derskodu varchar(10) not null, Vize int, Final int, Constraint ck_vize CHECK( vize>=0 and Vize<=100), Constraint ck_final CHECK( final>=0 and Final<=100) , Constraint Pk_Birinciller PRIMARY KEY (ogrno, derskodu) )
Create Komutu Uygulamaları CREATE TABLE Notlar( Ogrno int FOREIGN KEY References Ogrenciler(ogrno) not null, Derskodu char(10) FOREIGN KEY References Dersler(derskod) not null, Vize tinyint, Final tinyint )
Create Komutu Uygulamaları CREATE TABLE Notlar( Ogrno int, Derskod varchar(25), Vize int, Final int, Constraint fk_ogrno FOREIGN KEY (ogrno) References ogrenci(ogrno), Constraint fk_derskod FOREIGN KEY (derskod) References dersler(derskod) )
Create Komutu Uygulamaları CREATE TABLE Ogrenciler(ogrno int identity(1,1) primary key,ograd varchar(20)) CREATE TABLE dersler(derskod char(4) primary key, dersad varchar(30) ) CREATE TABLE Notlar( Ogrno int,-- FOREIGN KEY References Ogrenciler(ogrno) not null, Derskodu char(4) FOREIGN KEY References Dersler(derskod) not null, Vize tinyint, Final tinyint, Constraint fk_ogrno FOREIGN KEY (ogrno) references ogrenciler(ogrno) on update cascade on delete cascade, )
Create Komutu Uygulamaları CREATE TABLE Names ( FirstName VARCHAR (20), LastName VARCHAR (20), DateOfBirth DATETIME, CONSTRAINT MultiConstraint UNIQUE(FirstName, LastName, DateOfBirth) ) Explanation: Restrictions can also be placed on the data, or combinations of data, that are to be entered. This can be accomplished using the CONSTRAINT clause. This example requires that the combination of data in all three fields be unique. The multifieldindex must be a unique name within the database.
Create Komutu Uygulamaları IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.tables where TABLE_NAME='tbsiparis') Begin Print 'Aranan Tablo vardır...' End
Alter Komutu Uygulamaları ALTER TABLE Personel ADD lisansbolum varchar(30) ALTER TABLE Personel ADD Soyad varchar(20), Telefon char(11) ADD lisansmezuntarih datetime constraint ck_lisansmezuntarih check(lisansmezuntarih>=’01.01.2000’) ALTER TABLE Ornek ADD soyad varchar(30) constraint df_soyad default 'VATANDAS‘ ADD constraint ck_boy check(boy>=20 and boy<=250) ADD constraint pk_sirano Primary Key (sirano) ADD constraint df_boy default 20 for boy Alter komutu, daha önceden oluşturumuş olan bir nesnenin yapısal özelliklerini değiştirmek için kullanılır.
Alter Komutu Uygulamaları ALTER TABLE Personel DROP COLUMN lisansbolum DROP ck_mezuniyetkontrol DROP Column lisansbolum DROP [constraint] mezuniyetkontrol, COLUMN lisansbolum DROP COLUMN tel, [column] adres --Veri türü değişikliği (veri türü uygunluğuna bağlı ) ALTER TABLE Ornek ADD adres varchar(50) check(adres like 'a%') ALTER COLUMN adres varchar(30)
Alter Komutu Uygulamaları ALTER komutu araştırmaları Tablo adı nasıl değiştirilir? Alan adı nasıl değiştirilir? 3. ALTER TABLE Ornek ADD dogtar datetime Default getdate() WITH VALUES -- «WITH VALUES» takısı ne işe yarar?
Drop Komutu Uygulamaları DROP TABLE Personel DROP TABLE AdventureWorks.dbo.Sales Drop komutu belirtilen türdeki belirtilen isimli nesneyi siler. Eğer bu bir tabloysa, içindeki veriler, yapısındaki constraintler, indexler, triggerlar da silinir.