T sql-diğer komutlar Metin Akbulut.

Slides:



Advertisements
Benzer bir sunumlar
Stored Procedure Öğr.Gör.Metin Akbulut.
Advertisements

Hazırlayan : Öğr. Gör. Fahri YILMAZ
4 SQL- Yapısal Sorgulama Dili
SQL (Structured Query Language)
SQL Server da Kullanıcı Yönetimi (User Management)
SQL de Değişken Tanımlama
SQL Komutlar 5 Sibel SOMYÜREK.
EkoPC Bilişim Ltd. Eğitim Hizmetleri
Alt Sorgular Veritabanı 2.
Veri Tabanı Yönetim Sistemleri
Tek Tablo İçinde Sorgulamalar
Veritabanı Yönetim Sistemleri Hızlı ve Kısa Giriş
T-SQL-2.Konu Akış Kontrolleri.
Veri Tabanı Yönetim Sistemleri
VeriTabanı Uygulama. Tabloları yaratmak için MySQL komutları.
BÖLÜM 6 SQL SERVER KOMUTLARI.
10 Gruplandırarak Sorgulama
SQL (STRUCTURED QUERY LANGUAGE)
Bilgisayar Mühendisliği Bölümü
11 ekim 2011 VTYS –II Dersi. Kalıp İfadelerle Sorgu (Pattern) Eğer bir sözel verinin sadece belli kriterlere uyanlarını seçeceksek sütun_adı LIKE kalıp.
MYSQL 4. HAFTA. mySQL veri türleri INTTamsayı: 'den kadar değişen diziye "signed" (işaretli), 0'dan 'e kadar değişenine.
VIEW (BAKIŞ) OLUŞTURMA
ÖRNEKLER. musteri Id adi soyadi mus_satis Id barkod adet Urunlar barkod urun_adi kodu fiyati Stok_hareket tarih barkod gelen giden.
Bilgisayar Mühendisliği Bölümü
SQL Dili ve MySQL Komutları
SQL de Değişken Tanımlama
PHP ve MYSQL.
SQL SERVER 2008 Yücel YILDIRIM.
VeriTabanı Uygulama.
SQL (Structured Query Language). MySQL de Temel Komutlar : CREATE DATABASE isim; verilen isimde bir veri tabanı oluşturur. SHOW DATABASES; Tüm yaratılan.
SQL Sibel SOMYÜREK.
SQL Komutları (2) Uzm. Murat YAZICI.
RAISE RECORD/CURSOR TRIGGER
Bilgisayar Mühendisliği Bölümü
SQL’ e Giriş Uzm. Murat YAZICI.
Bilgisayar Mühendisliği Bölümü
Bölüm 8: SQL’de Yetkilendirmeler (Veri Kontrol Dili – DCL)
SİSTEM VERİTABANLARI. Sistem veritabanlarını tanıma. Kendi Login’imizi oluşturma Neler İşleyeceğiz?
Update UPDATE tablo_ismi SET sutun1=‘deger1’ WHERE sutun=deger.
GÜVENL İ K. Sunucu Seviyesinde Güvenlik Master Veritabanı (Kullanıcının gerekli yetkileri var mı?) Authentication Mod ◦ Windows Authentication Mod  Varsayılan.
ADRESİNDEN ÖRNEK VERİ TABANLARINI İNDİRİNİZ
Veri Tabanı Yönetimi Dersi 8. Laboratuvarı Arş. Gör. Pınar CİHAN.
S ORGU / DML / DDL KOMUTLARı İbrahim Onur Sığırcı.
Yapısal Sorgulama Dili SQL VTYS Giriş Hafta 5 Ders Notu.
Yapısal Sorgulama Dili SQL Hafta 7. TEKRARLI SATIRLARI ÖNLEMEK  DISTINCT komutu ile sorgu sonucunda birden fazla kayıt aynı verileri içeriyorsa tekrarlı.
Veri Tabanı Yönetimi Dersi 1. Laboratuvarı Arş. Gör. Pınar CİHAN.
Bilgisayar Mühendisliği Bölümü
© Marmara Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi
Örnekler, Rasgele Değer, Login işlemleri ve Yedekleme
Veri Tabanı Yönetimi Dersi 1. Laboratuvarı
© Marmara Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi
© Marmara Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi
© Marmara Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi
© Marmara Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi
© Marmara Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi
TETİKLEYİCİLER ve HATA KONTROLÜ
14.DERS Örnekler, Sorular BUKET DOĞAN.
5. HAFTA Öğr. Gör. Yunus KÖKVER
Veri Kontrol Dili (DCL) DCL, bir veri tabanı ile ilişkili kullanıcıları ve rollerin izinlerini değiştirmek için kullanılır. Diğer bir deyişle verilere.
VERİ TABANI SQL (STRUCTURED QUERY LANGUAGE) SAVAŞ TUNÇER.
© Marmara Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi
Öğretim Görevlisi Alper Talha Karadeniz Veri Tabanı 1
© Marmara Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi
VERİTABANI YÖNETİM SİSTEMLERİ 6-SQL Server-2
Sorgu / dml / ddl komutları
RAISE RECORD/CURSOR TRIGGER
SQL (STRUCTURED QUERY LANGUAGE)
Stored Procedure Öğr.Gör.Metin Akbulut.
SQL Server - Stored Procedures
VERİTABANI YÖNETİM SİSTEMLERİ 6-SQL Server-3-DDL
Sunum transkripti:

T sql-diğer komutlar Metin Akbulut

CREATE CREATE DATABASE Person

CREATE TABLE PERSONEL ( PERSONEL_ID int, AD varchar(10), SOYAD varchar(10) )

ALTER Nesnelerde Değişiklik Yapmak ALTER TABLE PERSONEL ADD BABA_AD varchar(20) NOT NULL

DROP -Nesne Silmek DROP TABLE PERSONEL

Veri Kontrol Dili (DCL) Temel Komutlar Açıklama GRANT Bir kullanıcının verileri kullanmasına ve T-SQL komutlarını çalıştırmasına izin verir. DENY Bir kullanıcının verileri kullanmasını kısıtlar. REVOKE Daha önce yapılan tüm kısıtlama ve izinleri iptal eder.

YETKİ SAHİBİ OLAN GRUPLAR: DCL komutlarını kullanabilmek için SQL Server'da varsayılan değer (default) olarak sysadmin , dbcreator , db_owner , db_securityadmin 'dir.

Sunucuya dışarıdan bir erişim sağlamak için bir giriş (login) oluşturulmalıdır. CREATE LOGIN yonetici WITH PASSWORD =’123456’ Bu rol ile veri tabanına bir kullanıcı olarak erişim için aşağıdaki satırlar yazılmalıdır CREATE USER yonetici FOR LOGIN yonetici Eğer User adı ile Login adı aynı ise FOR LOGIN satırına gerek kalmaz.

Veri tabanında uygulama rolü oluşturulması için de aşağıdaki satırlar kullanılabilir. CREATE APPLICATION ROLE Lab1 WITH PASSWORD = 'sifre' , DEFAULT_SCHEMA=Lab1

GRANT Komutu Veri tabanı kullanıcısına, veri tabanı rolüne veya uygulama rolüne izinler vermek için kullanılan komuttur. Genel Yazımı GRANT {ALL veya izinler} ON {izin_verilenler} TO {hesaplar} ALL ifadesi, tüm hakların verilebileceğini gösterir. Yonetici adlı kullanıcıya tablo oluşturma izni şöyle verilebilir: GRANT CREATE TABLE TO Yonetici

Yonetici adlı kullanıcıya tablo oluşturma izni şöyle verilebilir: GRANT CREATE TABLE TO Yonetici Aynı anda Lab1 rolüne de aynı izin verilebilir. GRANT CREATE TABLE TO Lab1, Tuncay1

Bir kullanıcıya hem veri tabanı hem de tablo oluşturma izni şöyle verilir: GRANT CREATE DATABASE, CREATE TABLE TO Ahmet

DENY Komutu Kullanıcıların haklarını kısıtlayan komuttur. Genel Yazımı DENY { ALL veya izinler} TO {kullanıcılar Örnek: DENY CREATE TABLE TO yonetici yonetici adlı kullanıcının tablo oluşturma yetkisi kısıtlanır.

PERSONEL tablosunda yonetici adlı kullanıcı SELECT komutuyla ilgili işlem yapamaz. DENY SELECT ON PERSONEL TO yonetici

REVOKE Komutu Daha önce yapılan tüm kısıtlama ve izinleri iptal eden komuttur. REVOKE komutunu, sys_admin rolüne veya db_owner, db_securityadmin sabit veri tabanı rollerine sahip kullanıcılar ve nesne için dbo olan kullanıcı çalıştırabilir. Genel Yazımı REVOKE {ALL veya izinler} {TO veya FROM} {hesaplar} Örnek: REVOKE ALL TO PUBLIC PUBLIC rolüne verilmiş olan tüm yetkiler kaldırılır.

REVOKE SELECT ON PERSONEL TO PUBLIC PUBLIC rolüne PERSONEL tablosunda seçim için verilen izin kaldırılır.

T-SQL’i kullanarak Ornek adında bir veri tabanı oluşturunuz.

Ornek veri tabanı altında Rehber adında bir tablo oluşturunuz Ornek veri tabanı altında Rehber adında bir tablo oluşturunuz. Tablo sütunları Ad VarChar(10), Soyad VarChar(20), Telefon VarChar (11) şeklinde olsun.

Oluşturduğunuz tabloya Adres adında bir sütun ekleyiniz. Alter table rehber add Adres varchar(50)

Eklediğiniz bilgilerin tabloya yazılıp yazılmadığını kontrol ediniz Eklediğiniz bilgilerin tabloya yazılıp yazılmadığını kontrol ediniz. Tablo üzerinde sağ tıklayarak Open Table komutunu tıklayabilir ve tablonuzu açabilirsiniz.

Kendi telefon numaranızı başka bir telefon numarasıyla değiştiriniz.

Sunucuda “Kullanici” adında bir login oluşturunuz. Sunucudaki Security/Logins alanında Login’in oluşturulup oluşturulmadığını kontrol ediniz.

Aynı isimde bir kullanıcı oluşturunuz. Create user Kullanici Ornek veri tabanındaki Security/Users alanında kullanıcının oluşturulup oluşturulmadığını kontrol ediniz.

“Kullanici” adlı user’a SELECT ifadesinin kullanımını engelleyiniz “Kullanici” adlı user’a SELECT ifadesinin kullanımını engelleyiniz. Deny Select on rehber to Kullanici

USE Komutu USE Veritabani_Adi şeklindedir. Örnek: USE master

Açıklama Satırları T-SQL'de bir satırın dikkate alınmamasını istiyorsanız "--" kullanabilir ya da /*........*/ Kullanabilirsiniz Örnek: -- CREATE TABLE ogrenci veya /* CREATE TABLE ogrenci */ şeklindeki kullanımlardan birini seçebilirsiniz.

GO Komutu Bir yığının sonunu belli etmek için GO komutu kullanılır. Bir yığın SQL Server’da işlenmeye başladığı anda önce Parse(ayrıştırma) edilir. Daha sonra derlenerek (Compile) çalıştırılır(Execute). Genel Yazımı Komutlar GO şeklindedir.

PRINT Komutu Değişkenlerin değerlerini, hataları vb. diğer ihtiyaç duyulan olaylarda PRINT komutu kullanılır. DEBUG işlemi için ihtiyaç duyulan bir komuttur. Genel Yazımı PRINT @degisken_adi şeklindedir.

Örnek: USE Deneme GO DECLARE @ad VARCHAR(10) SELECT @ad=’Mustafa’ PRINT @ad

COMPUTE ve COMPUTE BY Deyimleri Toplama fonksiyonunu kullanarak sonuç olarak bir toplam değeri üretir. COMPUTE deyimi her SELECT ifadesiyle kullanılır. COMPUTE BY ise ORDER BY deyimine gerek duyar. SELECT ogrno, ort FROM Ogr_Notlar ORDER BY ogrno COMPUTE SUM(ort)

GETDATE () Fonksiyonu Şimdiki tarih ve saat değerini gösterir. SELECT GETDATE()

DATEADD () Fonksiyonu Verilen bir tarihe istenilen sayıda bir tarih bilgisi eklemek için kullanılır. DATEADD fonksiyonunda dd gün mm ay yy yıl anlamındadır. Belirtilen tarih bilgisine 90 gün ekleyen T-SQL kodudur. SELECT DATEADD(dd, 90, '02.10.2007')

DATEDIFF () Fonksiyonu Belirtilen iki tarih arasındaki gün sayısını göstermektedir. Örnek: SELECT DATEDIFF(dd, '04.04.1974', '02.10.2007') Ayrıca hafta için wk, saat için hh, dakika için mi, saniye için ss kullanılabilir

DATEPART () Fonksiyonu Tarihle ilgili sayısal bilgilerin alınmasını sağlar. Örnek: SELECT DATEPART(dd, '01.04.1974') SELECT DATEPART(mm, '01.04.1974') SELECT DATEPART(yy, '01.04.1974')

declare @urunler int set @urunler=1 declare @toplam int set @toplam =(select COUNT(*) from laptop ) declare @urunmodel varchar(50) while @urunler <=@toplam begin declare @speed int set @speed =(select speed from laptop where code=@urunler ) set @urunmodel=(select model from Laptop where code=@urunler) if @speed >=400 and @speed<=500 print cast (@urunmodel as nvarchar) +'urun 400 ile 500 arasýndadýr' end if @speed >=501 and @speed<=600 print cast (@urunmodel as nvarchar) +'urun 501 ile 600 arasýndadýr' if @speed >=601 and @speed<=800 print cast (@urunmodel as nvarchar) +'urun 601 ile 800 arasýndadýr' set @urunler +=1

USE computer; GO SELECT model, price, "Fiyat Aralýðý" = CASE WHEN price = 0 THEN 'Fiyat Yok' WHEN price < 400 THEN '400 altýnda' WHEN price >= 500 and price < 599 THEN '500-599 arasýnda' WHEN price >= 600 and price < 1000 THEN '600-100 arasýnda' ELSE '1000 den fazla' END FROM Laptop

USE computer; GO UPDATE laptop SET price = ( CASE WHEN ((speed) < 500) THEN price - price*0.80 ELSE (price + price*0.80) END )

USE computer; GO create proc guncellefiyat @model varchar(10) as UPDATE laptop SET price = ( CASE WHEN ((speed) < 500) THEN price*0.80 ELSE (price*1.20) END ) where model=@model