SQL Server genel olarak iki tip veritanını yönetmek için kurulur.

Benzer belgeler
VERİ TABANI YÖNETİM SİSTEMLERİ-II

5 SQL- Yapısal Sorgulama Dili. Veritabanı 1

3 Sql Veri Tipleri. Veritabanı 1

8 Oracle da tablo yapısı içinde otomatik artan kolon yoktur. (identity kolon

3 Sql Veri Tipleri ve Örnek Veritabanı Tasarımı. Veritabanı 1

Fonksiyonlar istenilen deger tipinde dönüs yapabilir. INT, VARCHAR deger döndürebileceğiniz gibi bir tablo da döndürebilirsiniz.

Oracle da kullanılan veri tipleri:

Yukarıdakilerden hangileri DML (Data Manipulation Language) ile gerçekleştirilir?

Veri Tabanı SQL Server ve Management Studio kurulum linkleri:

Veri Tabanı-I 5.Hafta

-- işareti tek satırlık açıklamalarda kullanılır. Açıklama olarak yazılan satırın önüne konulması yeterlidir.

SORGULAR. Öğr.Gör.Volkan Altıntaş

BLG4134 Görsel Programlama III. Öğr. Grv. Aybike ŞİMŞEK

SP_RENAMEDB eski_isim, yeni_isim VEYA SP_RENAMEDB 'eski isim', 'yeni isim'

SQL TRIGGERS (Tetikleyiciler)

VERİTABANI Veritabanı Yönetimi

Ders Tanıtım Sunumu. Database Managegement II. Elbistan Meslek Yüksek Okulu Güz Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU

SQL e Giriş. Uzm. Murat YAZICI

Veri tabanına bağlanmak için öncelikle aşağıdaki yolu izleyerek ağ veri tabanı yazılımını başlatıyoruz.

İNTERNET PROGRAMLAMA 2 A S P. N E T. Marmara Teknik Bilimler MYO / Hafta 5 Veri Tabanı İşlemleri

TRIGGER. Trigger lar, tablo üzerinde tanımlanabilen ve bu tablo üzerinde bir işlem gerçekleştiğinde tetiklenen programlama ögeleridir.

1. VERİ TABANI ARAÇLARI

VERİ TABANI YÖNETİM SİSTEMLERİ I

13 Aralık Đlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL. Đlgili Modül/ler : Raporlar. Kullanıcı Tanımlı Raporlar Bölümünden Yapabildiklerimiz

Yaptığımız web sitelerinin daha kullanışlı olması için veritabanı sistemleri ile bağlantı kurup ihtiyaca göre verileri okuyup yazmasını isteriz.

Bu işleçlerin dışında, aşağıda belirtilen karşılaştırma işleçlerinden de yararlanılır.

T.C GAZİ ÜNİVERSİTESİ BİLİŞİM ENSTİTÜSÜ YÖNETİM BİLİŞİM SİSTEMLERİ ANA BİLİM DALI MS SQL KOMUTLARI VE MS SQL KOMUTLARI İLE İLGİLİ UYGULAMALAR

Aşağıdaki tabloyu inceleyin. Sorgulama işlemlerini bu tabloya göre yapacağız.

2- Total de 8000 byte yer tutup 4000 karakter olarak kullanabildiğimiz tip aşağıdakilerden hangisidir?

Veritabanına Giriş. Oğuzhan Ceylan. 19 Eylül 2011

VERİTABANI & VERİTABANI YÖNETİMİ

OTURUM AÇMA ADLARI. Tavsiye Edilen Önhazırlık Enterprise Manager'i kullanabilmek.

Data Programming SQL Language. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

3. Hafta Tablo İşlemleri BPR255 Veritabanı. Bu Derste Öğrenecekleriniz: 1. Tablo İşlemleri Kısıtlamalar (Constraints)

SQL 2005 SQL STUDIO MANAGER ACP YAZILIMI KURULUM KILAVUZU

VERİ TABANI YÖNETİM SİSTEMLERİ II. 9. FORMLAR ve ORACLE FORMS PROGRAMINDA FORM OLUŞTURMA

Mysql Veritabanı Komutları

Oluşturmak istediğimiz OU ye bir isim veriyoruz. Name kısmına ISTANBUL yazıyoruz,

İLERİ VERİTABANI SİSTEMLERİ SUAT ÜSTKAN

Bölüm 4: DDL Veri Tanımlama Dili

Ekle sekmesindeki Tablolar grubundaki Tablo seçeneği ile tablo oluşturulur.

20461C Querying Microsoft SQL Server Modül Seviye Belirleme Testi

Veritabanı sistemlerinde veri bütünlüğünü sağlayabilmek için CONSTRAINTS olarak adlandırılan bazı zorlayıcı ifadeler kullanılabilir.

Tavsiye Edilen Önhazırlık Temel SQL Server 2000 bilgisi edinmek.

Veritabanına Uygulanması

Veri Tabanı Hafta Dersi

SP_RENAMEDB eski_isim, yeni_isim VEYA SP_RENAMEDB 'eski isim', 'yeni isim'

SQL Stored Procedure

Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU

Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı Ara Öğr. Gör. Murat KEÇECĠOĞLU

SQL'e Giriş. SELECT Deyimi. SQL Komutları. Yardımcı Deyimler

Kullanıcı tanımlı fonksiyonlar SQL2000 ile gelen özelliklerden biridir. Fonksiyonlar tek bir değer veya tablo döndürmek için kullanılır.

Tablolar Arası İlşikiler ve Alan Özellikleri Siparis.musteri_no musteri.musteri_no Siparis.urun_kodu musteri.urun_kodu

SORGULAR VE ÇEŞİTLERİ II

Access e Nasıl Ulaşılır. Araç çubuklarını yeniden düzenlemek için Görünüm komutunun Araç çubukları seçeneği kullanılır.

Üst Düzey Programlama

3. Hafta Tablo İşlemleri BPR255 Veritabanı Yönetim. Bu Derste Öğrenecekleriniz: 1. Tablo İşlemleri

Tavsiye Edilen Önhazırlık Temel veritabanı kavramlar hakkında bilgi sahibi olmak. Hedefler Temel veritabanı güvenlik işlemlerini gerçekleştirebilmek

MSSQL. 4. Hafta Uygulama - 1 BPR255 Veritabanı CREATE DATABASE OKUL GO USE OKUL GO

«BM364» Veritabanı Uygulamaları

VERİ TABANI YÖNETİM SİSTEMLERİ I

Microsoft SQL Server 2005 Express Edition Hızlı Kurulum Dokümanı. 1. Administrator veya denki bir kullanıcı ile logon olunmalıdır.

Veritabanı Tasarımı. Kullanıcı Erişimini Kontrol Etme

KULLANICI TANIMLI FONKSİYONLAR

ÜNİTE NESNE TABANLI PROGRAMLAMA-I. Uzm. Orhan ÇELİKER VERİTABANI BAĞLANTISI İÇİNDEKİLER HEDEFLER

INTERNET INFORMATION SERVICES 6.0 DA WEB SAYFASI YAYINLAMAK

Elektra Raporlama Sistemi Sunumu

Veri Tabanı ve Yönetimi

Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU

VERĐTABANI YÖNETĐM SĐSTEMLERĐ

Erişim Makina. IFS Admin Kullanım Klavuzu. Umut Aytaç Mutlu

«BM364» Veritabanı Uygulamaları

Resim 7.20: Yeni bir ileti oluşturma

EBE-368 Veri Tabanı Yönetim Sistemleri İlişkisel Model (The Relational Model)

MS Access. üzerinde. defa çalıştırıldığında

MOBİL UYGULAMA GELİŞTİRME

Yeni kullanıcı hesabı açmak ya da varolan hesaplar üzerinde düzenlemeler yapmak.

Veri Tabanı Programlamaya Giriş

SQL Komutları (2) Uzm. Murat YAZICI

Kets DocPlace LOGO Entegrasyonu

BÖLÜM- 9: KULLANICI ERİŞİMLERİNİ YÖNETMEK

YAYGIN OLARAK KULLANILAN ADSL MODEMLER VE ROUTER AYARLARI

Veri Tabanı-I 1.Hafta

YEDEKLEME PROGRAMI KURULUM VE KULLANIMI

Bir çeşit prosedür. Ancak bu prosedür kendiliğinden çalışır. Çalışması için tabloya veri eklemek, veri silmek, veri değiştirmek yeterlidir.

EĞİTİM : VERİ TABANINA GİRİŞ VE TEMEL VERİ TABANI KAVRAMLARI. Bölüm : Veri Tabanına Giriş. Konu : Veri Tabanına Giriş

WEB E-POSTA AYARLARI. Outlook 2003 Ayarı ( Resimli Anlatım )

VERİ TABANI YÖNETİM SİSTEMLERİ-II

Tavsiye Edilen Önhazırlık Veritabanı kavramını öğrenmek

Resim 1. Access açılış sayfası. Resim 2. Access veri tabanı düzenleme sayfası

ADO.NET VERİTABANINA BAĞLANTI. Bir web formu üzerinden veritabanına bağlantımızı anlatacağım. UYGULAMA 1

VERİ TABANI ve YÖNETİMİ

PERKON PDKS Kurulum ve hızlı başlangıç rehberi

Veri Tabanı-I 9.Hafta

VERİ TABANI YÖNETİM SİSTEMLERİ

SQL Uyarı Programı Kurulum ve Kullanımı

CRYSTAL REPORT EĞĠTĠM DÖKÜMANLARI

Dış Veri Alma ÜNİTE 6. Bu üniteyi çalıştıktan sonra; Veri Menüsü Dış Veri Al Bağlantılar Sırala ve Filtre Uygula Veri Araçları Anahat

SQL Server 2008 kurulum için Microsoft Windows Installer 4.5 ve üzeri bileşenin bilgisayarınızda kurulu olması gerekir. İndirmek için tıklayın

Transkript:

SQL SERVER NEDİR SQL Server genel olarak iki tip veritanını yönetmek için kurulur. 1.OLTP (Online Transaction Processing) Bu yapı içinde veriler tutulur. Bu verilere kullanıcılar aynı anda değiştirebilir, güncelleyebilir, sorgulama yapabilir, silebilir, (Bilinen tüm database işlemleri yapılabilir.) 2.OLAP (Online Analitical Processing) Genellikle büyük veritabanları hakkında özet bilgilerin oluşturulduğu, veritabanlarıdır. Bu bilgiler analiz ve raporlamada kullanılır. Sql Server ilişkisel veritabanı yöntemlerini kullanır yani RDBMS (Relational Database Management System) olarak adlandırılır. RDBMS YAPISI 1. Tablolar içerisinde veri oluşturma ve tutma. 2. Veriler ve tablolar arasında ilişki kurma. 3. Veriler arasındaki ilişkiler için gerekli olan kuralları belirleme. (Örn: Primary Key, Foreign Key) 4. Sistem problemlerinde verileri kurtarma.(örn: recover,backup,restore) 5. Client uygulamalarından gelen istekleri cevaplama.(yazılımlar aracılığı ile veri yönetimi) 6. Transaction ve analiz için veri kaynaklarını yönetme. Kullanıcı Uygulamaları 1- Transact Sql : Bu bir sorgulama dilidir. SQL (Transact Structure Query Language-Yapısal Sorgulama Dili işlemleri) dilinin kullanılmasıyla yapılan işlemlerdir. (Örn: İnsert, update, delete sorgusu) 2- XML : (Extansible Markup Language) Html kodları içerisinde XML tagleri ile veritabanı işlemleri yapılması yöntemi. 1

3- OLEDB ve ODBC Uygulama Arayüzleri : Uygulamalar OLEDB ve ODBC kullanarak veritabanı işlemleri yaptırmaktır. Burada kullanılan komutlar yine TSQL diline ait komutlardır. 4- Active X Data Object (ADO) : ADO.NET bir programlama dilinde OLEDB yi kullanarak veritabanına erişim sağlar. Bu programlama dilleri Visual Basic, C#, J# gibi 5- English Query : Bilinen TSQL yerine basit İngilizce kelimeler kullanarak yapılan sorgulamadır. (Örn: how much rows are there on maas table?) VERİTABANI TİPLERİ İlk kurulduğunda otomatik olarak bazı veritabanları gelir. Bunlar System Database linkinin altında; -Master: Kullanıcı hesapları ve sistem hata mesajlarını izler. -Model : Yeni oluşturulacak veritabanları için temel kalıp oluşturur. -Tempdb : Geçici tablo bilgileri ve diğer geçici bilgilerin tutulduğu yerdir. -Msdb : Zamanlama ile yapılan iş bilgilerini tutar. (Örn: Zamanlanmış görevler) VERİTABANI NESNELERİ - Tables : Kayıtların tutulduğu objelerdir. Column ve rowlardan oluşur. - View: Birden fazla tabloyu ilişkilendirerek Kayıtların görüntülenmesi için oluşturulmuş sorgular. - Database Diagram : Tablo ilişkilerini izlemek için kullanılır. - Storage: Veri tabanı ya da tabloların depolama yöntemlerinin belirlendiği bölümdür. - Synonyms (eş anlamlılar): Yerel veya uzak bilgisayarlarda bulunan veri tabanı nesnelerine farklı bir ad vermek veri tabanı nesnelerinin konum değişikliğinde uygulamalarının korunmasını sağlar 2

- Programmability: procedure, functionlar, triggerlar vb. gibi program parçacıklarının database üzerinde yazıldığı bölümleri içeren nesnedir. - Service Broker: farklı veritabanları arasında iletişim için bileşenleri oluşturmak için kullanılan alt yapıdır - Security: O veri tabanı üzerinde yetkili kullanıcıların tanımlandığı, bu kullanıcıların hangi tablolalar üzerinde hangi yetkilere sahip olduğunun belirlendiği bölümdür MsSql server için tam isim tanımlaması (Fully Qualified Names) : Herhangi bir veri tabanı nesnesi için isim tanumlaması dört bölümden oluşur. -Server adı -Database adı -Sahip adı -Obje adı Örn : Create table (veri tabanı adı)kurs.dbo.(yeni oluşturulacak tablo adı)deneme(sn int, ad varchar(50)) Veritabanı Oluşturma Adımları 1. Sql Server a bağlanılır. 2. Database üzerinde new database seçeneği seçilir. 3. Gelen ileti kutusu üzerinde General Sekmesindeki name kısmından database bir ad verilir. 4. Sql serverda verilen adla artık bir veritabanı oluşmuştur. Tablo Oluşturma SQL İLE: Create table veri tabanı adı.dbo.tablo adı(alanadı1 tipi1, alanadı2 tipi2 ) Örnek: Create table OGRENCI.dbo.KURS(sn int, ad varchar(50)); 3

Veri Tipleri (Data Type) Alfasayısallar: Char: İçerdiği veriler, alfanümeric olup, hep aynı karakter sayısına sahip veri tipleridir (örnek:telefon numaraları) Varchar: İçerdiği veriler, alfanümeric olup, verilerin karakter uzunluklarında eşitlik yoktur. Nchar: İçerdiği veriler, alfanümeric olup, hep aynı karakter sayısına sahip veri tipleridir (örnek:telefon numaraları) NVarchar: İçerdiği veriler, alfanümeric olup, verilerin karakter uzunluklarında eşitlik yoktur. Char-Varchar veri tipleriyle, Nchar-Nvarchar veri tipleri arasındaki fark : Nchar-Nvarchar tipler Unicode içerirler. Unicode'nin avantajı,uluslararası karakter setini kullanmasından dolayı,dünyada tanımlı olan her alfabeyi içermesidir.bu verilerin bozulmadan taşınabilirliğini sağlar. Tarih tipleri: Time: Saat verisini tutar Date: Tarih verisini tutar DateTime: Tarih ve saati birlikte tutar Smalldatetime : Tarih ve saati birlikte tutar. DateTime ile farkı: datetime,1 Ocak 1753 ve 31 Aralık 9999 arası tarihleri saklayabilen veri tipidir. smalldatetime,1 Ocak 1900 ve 6 Haziran 2079 arası tarihleri saklayabilen veri tipidir. DateTime tipi verileri formatlamak: SELECT CONVERT(VARCHAR, GETDATE(), 0) --Sonuç : Jul 17 2009 4:43PM SELECT CONVERT(VARCHAR, GETDATE(), 1) --Sonuç : 07/17/09 SELECT CONVERT(VARCHAR, GETDATE(), 2) --Sonuç : 09.07.17 SELECT CONVERT(VARCHAR, GETDATE(), 3) --Sonuç : 17/07/09 SELECT CONVERT(VARCHAR, GETDATE(), 4) --Sonuç : 17.07.09 SELECT CONVERT(VARCHAR, GETDATE(), 5) --Sonuç : 17-07-09 SELECT CONVERT(VARCHAR, GETDATE(), 6) --Sonuç : 17 Jul 09 SELECT CONVERT(VARCHAR, GETDATE(), 7) --Sonuç : Jul 17, 09 SELECT CONVERT(VARCHAR, GETDATE(), 8) --Sonuç : 16:43:05 SELECT CONVERT(VARCHAR, GETDATE(), 9) --Sonuç : Jul 17 2009 4:43:05:573PM SELECT CONVERT(VARCHAR, GETDATE(), 10) --Sonuç : 07-17-09 SELECT CONVERT(VARCHAR, GETDATE(), 11) --Sonuç : 09/07/17 4

SELECT CONVERT(VARCHAR, GETDATE(), 12) --Sonuç : 090717 SELECT CONVERT(VARCHAR, GETDATE(), 13) --Sonuç : 17 Jul 2009 16:43:05:590 SELECT CONVERT(VARCHAR, GETDATE(), 14) --Sonuç : 16:43:05:590 SELECT CONVERT(VARCHAR, GETDATE(), 20) --Sonuç : 2009-07-17 16:43:05 SELECT CONVERT(VARCHAR, GETDATE(), 21) --Sonuç : 2009-07-17 16:43:05.590 SELECT CONVERT(VARCHAR, GETDATE(), 22) --Sonuç : 07/17/09 4:43:05 PM SELECT CONVERT(VARCHAR, GETDATE(), 23) --Sonuç : 2009-07-17 SELECT CONVERT(VARCHAR, GETDATE(), 24) --Sonuç : 16:43:05 SELECT CONVERT(VARCHAR, GETDATE(), 25) --Sonuç : 2009-07-17 16:43:05.590 SELECT CONVERT(VARCHAR, GETDATE(), 100) --Sonuç : Jul 17 2009 4:43PM SELECT CONVERT(VARCHAR, GETDATE(), 101) --Sonuç : 07/17/2009 SELECT CONVERT(VARCHAR, GETDATE(), 102) --Sonuç : 2009.07.17 SELECT CONVERT(VARCHAR, GETDATE(), 103) --Sonuç : 17/07/2009 SELECT CONVERT(VARCHAR, GETDATE(), 104) --Sonuç : 17.07.2009 SELECT CONVERT(VARCHAR, GETDATE(), 105) --Sonuç : 17-07-2009 SELECT CONVERT(VARCHAR, GETDATE(), 106) --Sonuç : 17 Jul 2009 SELECT CONVERT(VARCHAR, GETDATE(), 107) --Sonuç : Jul 17, 2009 SELECT CONVERT(VARCHAR, GETDATE(), 108) --Sonuç : 16:43:05 SELECT CONVERT(VARCHAR, GETDATE(), 109) --Sonuç : Jul 17 2009 4:43:05:607PM SELECT CONVERT(VARCHAR, GETDATE(), 110) --Sonuç : 07-17-2009 SELECT CONVERT(VARCHAR, GETDATE(), 111) --Sonuç : 2009/07/17 SELECT CONVERT(VARCHAR, GETDATE(), 112) --Sonuç : 20090717 SELECT CONVERT(VARCHAR, GETDATE(), 113) --Sonuç : 17 Jul 2009 16:43:05:607 SELECT CONVERT(VARCHAR, GETDATE(), 114) --Sonuç : 16:43:05:620 SELECT CONVERT(VARCHAR, GETDATE(), 120) --Sonuç : 2009-07-17 16:43:05 SELECT CONVERT(VARCHAR, GETDATE(), 121) --Sonuç : 2009-07-17 16:43:05.620 SELECT CONVERT(VARCHAR, GETDATE(), 126) SELECT CONVERT(VARCHAR, GETDATE(), 127) Parasal Veri tipleri: --Sonuç : 2009-07-17T16:43:05.620 --Sonuç : 2009-07-17T16:43:05.620 Sql Server parasal türde veri saklamak için money ve smallmoney tiplerini sunmaktadır.bu veriler,virgülden sonra 4 basamağa kadar duyarlı ondalık tipli verilerdir. money, 99999999999999,9999,yaklaşık 99 Trilyon ile,-99999999999999,9999 arası veriler için kullanılır. smallmoney,214,748.3648,yaklaşık 214 bin ile,-214,748.3648 arası veriler için kullanılır. Sayısal Veri tipleri: binary -> sabit uzunluklu ikili(0,1) veriler için. varbinary -> değişken uzunluklu ikili(0,1) veriler için. Tinyint 1 byte büyüklüğüne sahip,0-255 arasındaki tam sayı veriler için kullanılır. Smallint 2 byte büyüklüğüne sahip,+- 32 bin arasındaki tam sayı veriler için kullanılır. int 4 byte büyüklüğüne sahip,+- 2 milyar arasındaki tam sayı veriler için kullanılır. 5

Bigint 8 byte büyüklüğüne sahip,+ 2u63 ile -2u63 arasındaki tam sayı veriler için kullanılır. Sql server kayan nokta aritmetiği için kullanılan veri tipleri Float 7 basamağa kadar çıkmaktadır. Real 15 basamağa kadar çıkmaktadır Decimal(precision,scale) ondalık ve tamsayı verileri saklayabilen türlerdir. Numeric ondalık ve tamsayı verileri saklayabilen türlerdir. Diğer Veri Tipleri bit,adı üzerinde 1 bitlik veri hücresidir.bir takım verilerin işaret bilgisi için kullanılır sql_variant,text,ntext,image,timestamp ve kendi türünden(sql_variant) veriler haricindeki farklı tüm tipleri saklayabilen değişken yapılı bir veri türüdür. timestamp,bir tablo güncellendikçe değeri otomatik olarak 1 artan veri türüdür.hex formatında yazılır,başlangıç değeri 0x00000000000007D1 gibi rasgele olarak verilir. uniqueidentifier,benzersiz 16 byte hex değerindeki bir veri türüdür.genellikle kayıt sayısının 4 milyarı geçeceği durumlarda veya çeşitli güvenlik sebeblerinden ötürü kullanılmaktadır. image veri türünün ise bir çok veritabanında performans kaybına neden olduğu göz önüne alındığında BLOB(Binary Large Object) verileri artık terkedilmeye başlamıştır. xml -> XML türünde,alt veriler içerebilecek bir veri. 6

Sql Server DateTime(Tarih Saat) Fonksiyonları Fonksiyon Açıklama GETDATE() DATEDIFF() Sistemin o anki tarih ve saatini verir ÖRNEK: SELECT GETDATE() İki tarih arasındaki farkı gösterir ÖRNEK: SELECT ADI,SOYADI,DATEDIFF(DAY,DOGUM_TARIHI,GETDATE()) FROM KIMLIK DATEADD() Parametre olarak geçeceğimiz tarih e gün, ay, yıl eklemek için kullanırız. ÖRNEK: SELECT DATEADD(DAY,20,GETDATE()) DATEPART() Parametre olarak geçtiğimiz tarihin sadece gün, ay, yıl şeklinde parçalayıp alabiliriz. CONVERT() DAY() MONTH() YEAR() Tarih ve saat veri türlerini farklı formatlarda göstermek için kullanabiliriz. Parametre olarak geçtiğimiz tarihin gün kısmını verir. Parametre olarak geçtiğimiz tarihin ay kısmını verir. Parametre olarak geçtiğimiz tarihin yıl kısmını verir. MsSql Server Araçları ile Bu bölümümüzde ise databasemi tablolarımızı ekleyeceğiz.öncelikle Object Explorer'a geri dönüyoruz ve databasemizi buluyoruz ve sol tarafında bulunan + ya tıklıyoruz.database Diagrams,Tables,Wiews dosyalarını görüyorsunuz. Tablo oluşturmak için burada sadece Tables dosyasını kullanacağız. Tables >New > Table Tıklıyoruz. 7

Tablonun Sütunlarını Oluşturmak Karşımıza çıkan pencerede tablomuzun sütunlarını(column) yazıyoruz. İlk olarak Id sütunumuzu yazıyoruz ve yazdığınız satırın üstüne sağ tıklayıp Set Primary Key seçeneğine tıklıyoruz. Peki set primary key ne işe yarıyor derseniz eğer bir kaç madde ile tanımlayalım. Primary Key Özellikleri Nelerdir? 1) Bir tabloda en falza 1 primary key olabilir. 2) Primary key olan sütunda veri tekrarı olmaz. Unique Index özelliği vardır yani benzersiz değerler farklı değerler,veriler olması gerekiyor. 3) Primary key olan sütunlar "NULL" değeri taşıyamaz. 8

Kısacası primary key 1 tane değerden bir tane daha eklenmemesini sağlıyor. Örnek olarak verirsek "ahmet" adlı veriyi ikinci kez kayıt etmiyor. İlerleyen zamanlarda bu çok işinize yarayacak.devam edicek olursak, Id adlı sütunumuzu primary key olarak ayarladıktan sonra properties veya column properties penceremizden (eğer açık değilse Wiew menüsünden Properties Window yada F4'e basarak açabilirsiniz.) Identity Specification seçeneğini yes yapıyoruz.peki Identity seçeneği bize ne işimize yarıyor? Identity Specification Özellikleri Nelerdir? 1) Identity Specification özelliği sadece "Int" data type olarak seçilen sütunlar için kullanabilirsiniz. 2) Identity Specification özelliği "Yes" yapıldığı taktirde 1 den başlayıp kayıt eklendiği sürece otomatik artacaktır. 3) Bu özellik genellikle no yada id vermede kolaylık sağlamaktadır. Indentity özelliğimizi ekledikten sonra diğer sütunlarımızı oluşturabiliriz. İkinci sütun adı olarak "Ad" yazıyoruz.bu sütunumuzun data type olarak "nvarchar(50) " kullanıyoruz.bir diğer sütunumuz ise "Soyad" sütunu, bu sütunumuzda da aynı data type kullanıyoruz.(resim 5) Şimdi tablomuzun penceresini kapatıyoruz. "Choose Name" başlıklı küçük bir kutucuk açılıyor ve burada tablomuzun ismini istiyor. Türkçe karakter kullanımına dikkat ederek tablomuzun ismini "Kullanicilar" yazıyoruz ve Ok diyoruz 9

Resim 6 Tablomuzu kurduk eğer databasenize sağ tık yapıp Refresh yaparsanız tablonuz Tables dosyasının içine gelecektir Tabloya Veri Ekleme 10

En son işlemimiz olan tabloya veri eklemeye geldik. Bu alanda query kullanacağız. SQL kodlarını kullanarak veritabanlarında işlemler yapacağız. İlk olarak New Query yapıyoruz.(resim 8) Artık kodlamaya başlayabiliriz.açılan penceremizde şu kodları kullanacağız. insert into Kullanicilar (Ad,Soyad) Values ('Eren','Akpınar') select * from Kullanicilar Kodlarımızı yazdıktan sonra Execute(F5) e basıp işlemlerimizi gerçekleştiriyoruz. Burdaki kodlarımızı biraz açarsak; Insert komutu yeni bir değer ekleme yaparken kullanılacak komuttur. Kullanicilar yazan kısım ise tablomuzun adı.insert into nun hemen altındaki (Ad,Soyad) kısmı içine veri eklenecek sütunların adıdır ve values değerleri gösterir. Yani burada veritabanımızın Ad bölümüne Eren Soyad Bölümüne Akpınar verisini yolladık. Gördüğünüz gibi bir de select komutu var.select komutu ile veri tabanımızdaki bilgileri getirebiliyoruz.kodumuzu biraz açarsak eğer * yazan kısım o tablonun verileri gelirken tüm sütunların içindeki verileri getiriyor.eğer biz sadece adını istiyorsak yıldız yerine Ad yazmamız yeterli olacaktır. from Kullanicilar komutu yine tablomuzu belirlemek amacı ile kullanılır. Bu komutlarımızın kısa anlatımı olarak öncelikle insert ile ekleme işlemi yaptırıyoruz ve ekleme işlemi yapılmış mı diye select komutu ile kontrollerini yapıyoruz. NOT: Tablo tasarımı üzerinde değişiklik yapıp yeniden kaydetmek için tools -options seçeneği seçilir. Designers bölümünden Prevent Saving Changes that require table re-creation (Tablonun yeniden oluşturulmasını gerektiren değişiklikleri kaydetmeyi önle) işareti kaldırılır 11

Tablo silmek 1- Tablo üzerindeysek delete seçeneği seçilir 2- drop table veri tabanı adı.dbo.tablo adı yazılarak sql query modunda çalıştırılır. Örnek: drop table OGRENCI.dbo.KIMLIK Dışarıdan Tablo Almak-Dışarıya tablo vermek 1- Veri tabanı üzerinde sağ Mouse menüden tasks seçeneği seçilir 2- Eğer dışarıdan tablo alınacaksa; import data seçilir, 3- Data source listesinden; hangi tip veri tabanından tablo alınacaksa o seçilir (örnek:microsoft Access Database Engine) 4- File name bölümünden veri tabanınızın olduğu yer ve veri tabanı seçilir (örnek: OGRENCI.mdb) 5- Sonra gelen ileti kutusunda Destination listesinden sizin mssql server database seçilir (not: eğer sa kullanıcısı ile veri tabanı oluşturduysanız use SQL Server Authentication seçeneği işaretlenir 6- User name:sa, password:? Girilir, Database bölümünde tablonun alınacağı veri tabanınızın seçili olduğuna dikkat edin 7- Gelen ileti kutusundan 1. Seçenek Copy Data from. Seçenei işaretli olmalıdır 8- Artık data kaynağındaki tablolar listelenir. Hangi tablo ya da tablolar alınacaksa onlar işaretlenip seçilir ve next denir 9- En son olarak Finish seçilip tablo alma işlemi bitirilir. 12

10- Alınan tabloyu object Explorer içinde veri tabanınızın altındaki tablolar içinde görmek için araç çubuğu üzerindeki Refresh butonu ya da F5 tıklanır Tablolar Arası ilişki oluşturmak (Database Diagrams) 1- İlgili veri tabanı altında Database Diagrams üzerinde sağ Mouse basılır 2- New Database Diagrams seçilir 3- İlişki kurulacak tablolar seçilir 4-1 den sonsuza (PK dan FK ya) sürüklenir 5- Ok tuşlanır ve save all seçeneği ile kayıt yapılır 6- İlişki properties den INSERT and UPDATE açılır ve listeden Delete Rule ve Update Rule seçeneklerinden Cascade seçilerek yaniden save seçeneği ile ilişki kaydedilir Kullanıcı Oluşturma işlemleri Sql Server da kullanıcı oluşturmak için ; 1. security den new-login ya da alt seçeneklerinden logins-new login bölümü seçilir 2. New login gelen ileti kutusunda login name kısmına veritabanına login olacak kullanıcının adı yazılır. Authentication kısmından da veritabanının açılış şekli seçilir. Eğer Windows authentication seçilirse name kısmındaki ad aynı zamanda Windows kullanıcısı da olması gerekir. Sql server authentication seçilirse bu kullanıcının sadece sql server database kullanıcısı olması sağlanır ve password belirtilir. 3. Database bölümünde ise istenilen database seçilir. Eğer seçilmezse default master veritabanıdır. 4. Language bölümünden dil seçilir. 5. Server Roles linkinden bu kullanıcı için veri tabanı üzerinde haklar seçilir. (public default seçilidir. Veri tabanı üzerinde tüm haklara sahip olunsun isteniyorsa; sysadmin seçeneği de seçilmeldir) 13

6. User Mapping bölümünde isteğe göre seçilen veri tabanı değiştirilebilir, yeni veri tabanları eklenebilir. 7. Yapılan bu işlemler onaylanır 8. Refresh ya da F5 le yenilendiğinde Security-Logins bölümünde yeni kullanıcıyı görebilirsiniz. İsterseniz disconnect yaparak yeniden bu kullanıcınızla connect olabilirsiniz. Veri tabanı üzerinde SQL oluşturma 1- Veri tabanı üzerinde New Query seçilir 2- Gelen ekranda, sql modunda seçili veri tabanı içindeki tablolardan sorgular oluşturulabilir. 3- Bu sorgu kaydet denildiğinde disk üzerine sql uzantısı olarak save edilir 4- Aynı sql sayfası üzerinde birden fazla sql cümlesi çalıştırılabilir. Sorguların sonuna ; konulur, tüm sorgu seçilir ve execute simgasi tıklanarak seçili sql çalıştırılır. View oluşturma 1- İlgili veri tabanı üzerindeyken view sekmesi açılır 2- View üzerinde Mouse sağ menüden new view seçilir 3- Gelen ileti kutusu kapatılır 4- Sql yazılır 5- Execute (çalıştırılır) edilir 6- Save edilirken bir view adı verilir 7- Refrehs yapıldığında yeni viewi görebilirsiniz YA DA sql ile oluşturabilirsiniz. Örnek: Karadeniz illerini veren view(view adı: karadeniz_illeri) CREATE VIEW karadeniz_illeri AS SELECT IL_KODU,IL_ADI FROM dbo.iller WHERE BOLGESI=5; 14

TRIGGER (TETİKLEYİCİ) OLUŞTURMAK Tablolardan herhangi biri üzerinde, ister veri tabanında isterse ara yüzlerde yapılacak veri değişikliğinde, bir başka tablonun(tabloların) etkilenmesi için yazılan veri tabanı nesnesidir. 1- Oluşturulacak tablonun solundaki (+) işareti açılır 2- Gelen işlemlerden trigger üzerinde sağ Mouse menüden new trigger seçilir 3- Ya da new query ile sorgu ekranı açılır 4- oluşturulacak trigger scripti bu ekranda yazılır. 5- Execute edilir. 6- Böylece tetikleyen tabloda yapılacak değişiklikler tetiklenen tabloda da gerçekleşir. Örnek triggerler: 1- ILLER tablosuna yapılacak kayıt ekleme Y_ILLER tablosuna da eklensin. create TRIGGER [dbo].[trg_il] ON [dbo].[iller] FOR INSERT AS SET NOCOUNT ON; BEGIN DECLARE @KODU numeric(4) SET @KODU = (SELECT IL_KODU FROM inserted) DECLARE @ADI nvarchar(30) SET @ADI = (SELECT IL_ADI FROM inserted) DECLARE @BOL numeric(4) SET @BOL = (SELECT BOLGESI FROM inserted) insert into [dbo].[y_iller](yil_kodu,yil_adi,ybolgesi) Values (@KODU,@ADI,@BOL); END; 2- ILLER tablosunda bir kayıt silindiğinde Y_ILLER tablosunda da aynı kayıt silinsin CREATE TRIGGER [trg_il_sil] ON [dbo].[iller] AFTER DELETE AS SET NOCOUNT ON; BEGIN DECLARE @ILKO numeric(4) SET @ILKO = (SELECT IL_KODU FROM deleted) DECLARE @ILAD nvarchar(30) 15

SET @ILAD = (SELECT IL_ADI FROM deleted) DECLARE @BOL numeric(4) SET @BOL = (SELECT BOLGESI FROM deleted) DELETE FROM [dbo].[y_iller] WHERE YIL_KODU= @ILKO END; MSSQL SERVER DA TÜRKÇE KARAKTER PROBLEMİNİ ÇÖZMEK Özellikle dışarıdan alınan tablolarda zaman zaman Türkçe karakterlerinin bozuk geldiği görülebilir. Bu karakterleri kalıcı olarak (veri tabanı üzerinde) düzeltmek için aşağıdaki adımlar izlenmelidir. 1- İlgili veri tabanı üzerindeyken new query penceresi açılır ve aşağıdaki function (alt program) past edilir. CREATE FUNCTION Turkceye (@girdi NVARCHAR(MAX)) RETURNS NVARCHAR(MAX) AS BEGIN DECLARE @sonuc NVARCHAR(MAX) SET @sonuc = @girdi SET @sonuc = Replace(@sonuc COLLATE Latin1_General_BIN,N'ð', N'ğ'); SET @sonuc = Replace(@sonuc COLLATE Latin1_General_BIN,N'ð', N'Ğ'); SET @sonuc = Replace(@sonuc COLLATE Latin1_General_BIN, N'Ð', N'Ğ'); SET @sonuc = Replace(@sonuc COLLATE Latin1_General_BIN,N'ý', N'ı'); SET @sonuc = Replace(@sonuc COLLATE Latin1_General_BIN,N'Ý', N'İ'); SET @sonuc = Replace(@sonuc COLLATE Latin1_General_BIN,N'þ', N'ş'); SET @sonuc = Replace(@sonuc COLLATE Latin1_General_BIN,N'Þ', N'Ş'); RETURN @sonuc COLLATE Turkish_CI_AS ; END Execute edilir ve veri tabanı refresh edilir 2- Veri tabanı içindeki nesnelerden, Programmability-Fuctions-Scalar Valued Funtion seçeneği altında bu function ı görmeniz gerekiyor. 3- Son işlem olarak artık veri bozukluğu olan alanları bu function la update edebilirsiniz. Örnek: UPDATE SAYISTAY_YEVMIYE2 SET hes_ad=dbo.turkceye(sayistay_yevmiye2.hes_ad) 16