480 likes | 775 Views
MySQL Veritabanı Sunucusu ve MySQL Veritabanı Kullanımı. Öğr .Gör. Şükrü KAYA. MySQL VeritabanI Sunucusu. Öğr .Gör. Şükrü KAYA. MySQL VeritabanI.
E N D
MySQL Veritabanı SunucusuveMySQL Veritabanı Kullanımı Öğr.Gör. Şükrü KAYA
MySQLVeritabanI Sunucusu Öğr.Gör. Şükrü KAYA
MySQLVeritabanI • MySQL, altı milyondan fazla sistemde yüklü bulunan çoklu iş parçacıklı (multi-threaded), çok kullanıcılı (multi-user), hızlı ve sağlam (robust) bir veritabanı yönetim sistemidir. • UNIX, OS/2 ve Windows platformları için ücretsiz dağıtılmakla birlikte ticari lisans kullanmak isteyenler için de ücretli bir lisans seçeneği de mevcuttur.
MySQLVeritabanI • Linux altında daha hızlı bir performans sergilemektedir. • Kaynak kodu açık olan MySQL'in pek çok platform için çalıştırılabilir ikilik (binary) kod halindeki indirilebilir sürümleri de mevcuttur. • Ayrıca ODBC sürücüleri de bulunduğu için birçok geliştirme platformunda rahatlıkla kullanılabilir.
MySQLVeritabanI • Geliştiricileri, 500'den fazlası 7 milyon kayıt içeren 10.000 tablodan oluşan kendi veritabanlarını (100 gigabyte civarında veri) MySQL'de tuttuklarını söylüyorlar. • Web sunucularında en çok kullanılan veritabanıdır, .asp , .php v.s bir çok web programlama dili ile kullanılabilir
MySQLVeritabanI • Ayrıca "veri tutarlılığını (referentialintegrity)" sağlama işinin programcıya bırakılması tercih edilmiştir, ancak bu bir dezavantaj olarak görülmeyebilir. Çünkü pek çok veritabanı programcısı VTYS'lerdeki veri tutarlılığı'nın esnek olmayan, zorlayıcı bir özellik olduğunu düşünmektedir.
MySQLVerİtabanIKullanImI Öğr.Gör. Şükrü KAYA
MySQLVerİtabanIKullanImI • MySQL Veritabanı sunucusunda veriler üzerinde işlem yapabilmek için SQL (StructureQueryLanguage) dili kullanılmaktadır. • SQL'in kullanılabileceği birçok arayüz yazılımı bulunmaktadır. Bunlardan bazıları tamamen ücretsiz bazıları da ücretli yazılımlardır.
MySQLVerİtabanIarayüzlerİ • MySQL Terminali • phpMyAdmin (web tabanlı arayüz) • MySQLQuery Browser • MySQL-Front • Aqua Data Studio • DreamCoder • DBACentral • DBACentral • SQL Manager • HeidiSQL • Query Browser • Navicat • SQLyog
MySQLVerİtabanIarayüzlerİ MySQLTermİnalİ Öğr.Gör. Şükrü KAYA
MySQLTermİnalİ C:\APPSERV\MYSQL\BIN> mysql –h localhost –u root -p mysql>_ ----------------------------------------------------------------------------- SHOW DATABASES;
MySQL Terminali C:\APPSERV\MYSQL\BIN> mysql –h localhost –u root -p mysql>SELECT * FROM adresler; ----------------------------------------------------------------------------- SELECT * FORM adresler;
MySQLVerİtabanIarayüzlerİ phpMyAdmin Öğr.Gör.Şükrü KAYA
phpMyAdmin • phpMyAdmin; PHP programlama dili ile geliştirilmiş, web tabanlı bir MySQL Veritabanı Sunucusu arayüzüdür. • İnternet tarayıcı (Internet Browser) programları aracılığıyla kullanılır.
phpMyAdmin • phpMyAdminpaketi Windows işletim sistemlerine öntanımlı olarak "AppServ", "PhpTriad" ve "Wamp" gibi uygulamalar ile sisteme yüklenir. • PHP destekli web sunucusu yüklü bilgisayarlara ayrıca tek olarak da kurulabilir. İndirme adresi ; www.phpmyadmin.net
phpMyAdmin • PhpMyAdminarayüzüne aşağıdaki adresten ulaşılabilir; http://localhost/phpmyadmin • MySQL Sunucusu ile iletişim kurmak için belirlenen bir MySQL kullanıcı adı ve şifre girilmesi istenir. • Giriş yapıldığında aşağıdaki gibi bir ekran ile karşılaşılır.
phpMyAdmin Yeni veritabanı oluşturma formu Veritabanı Listesi
phpMyAdmin Veritabanı işlemleri Tablo listesi Veritabanı ve tablo listesi Yeni tablo ekleme formu
phpMyAdmin Tablo Alanları (Yapı) ve Alan İşlemleri Yeni Alan Ekleme Formu Anahtar ve İndeks Alanları
phpMyAdmin Tabloyu Boşalt (Kayıtları Sil) Tabloyu Sil Seçili Alan(lar)a; Gözat, Değiştir, Birincil Anahtar Yap, Eşsiz (Uniq) Yap, Tam Metin olarak İndeksle
phpMyAdmin Kayıtları Görmek için tıkla Kayıtları veya Yapıyı SQL olarak dışarı aktar. Kayıtları veya Yapıyı SQL olarak MySQL'e aktar. Kayıtlar üzerinde işlem yapmak için: Seç Değiştir Veya Sil Kayıtlar ve Kayıt İşlemleri
phpMyAdmin Kayıt Ekle
phpMyAdmin Kayıt Ara Seçili Alanlarda verilen bilgileri KOŞUL(lar)a uygun olarak sorgula
phpMyAdmin SQL Sorgu Sayfası Aç SQL Sorgu Sayfası Aç Veritabanını Sil phpMyAdmin Çık MySQL Yardım phpMyAdmin Yardım phpMyAdmin Ana Sayfası
MySQL-Front MySQLVerİtabanIarayüzlerİ Öğr.Gör. Şükrü KAYA
MySQL-Front Sunucu Adı
MySQL-Front MySQL Sunucusu Kullanıcı Adı ve Şifresi
MySQL-Front Önceden MySQL Sunucusu, Kullanıcı Adı ve Şifresi kaydedildiyse; bu pencere ekrana gelir. Aç Düğmesi tıklanarak MySQL sunucusuna bağlanır.
MySQL-Front Tablo Alanları ve Özellikleri Penceresi
MySQL-Front Kayıtlar
MySQL-Front Sorgu Penceresi, Sorgu Yazılıp Çalıştır Tıklanır veya F9 tuşuna basılır. Sorgu Penceresi, Sorgu Yazılıp Çalıştır Tıklanır veya F9 tuşuna basılır. Sorgu Penceresi, Sorgu Yazılıp Çalıştır Tıklanır veya F9 tuşuna basılır.
SQL Sorgulama Dili Öğr.Gör. Şükrü KAYA
SQL Sorgulama Dili • SQL - StructuredQueryLanguage • Anlamı Yapısal Sorgulama Dili demektir. • Yani Veri Tabanlarındaki verileri işlemek için kullanılan bir sorgulama dilidir. • SQL ile hemen hemen tüm veri tabanlarında kullanılabilir.
SQL Sorgulama Dili • SQL temel olarak şu ifadelerle kullanılır: • CREATE, SELECT, FROM, WHERE, ORDER BY, LIKE, BETWEEN … AND …, SUM(), MAX(), MIN(), AVG(), COUNT(), …
SQL-Veritabanı Oluşturma-Silme • CREATE DATABASE VeritabanıAdı Örnek: CREATE DATABASE AdresDefteri; • DROP DATABASE VeritabanıAdı Örnek: DROP DATABASE AdresDefteri;
SQL-Tablo Oluşturma-Silme CREATE TABLE TabloAdı( AlanAdı1 VeriTipi(Boyutu), AlanAdı2 VeriTipi(Boyutu), AlanAdı3 VeriTipi(Boyutu), … , indeksler)
SQL-Tablo Oluşturma-Silme CREATE TABLE Adresler( no INT(5) UNSIGNED NOT NULL AUTO_INCREMENT, ad VARCHAR(20) NOT NULL, soyad VARCHAR(20), adres TEXT, sehir VARCHAR(25), yas INT(3) UNSIGNED DEFAULT NULL, PRIMARY KEY(no) );
SQL-Veri Erişim • SELECT Alan(lar) FROM Tablo • SELECT * FROM Adresler; • SELECT ad FROM Adresler; • SELECT soyad FROM Adresler; • SELECT sehir FROM Adresler;
SQL-Veri Erişim SELECT Alan(lar) FROM Tablo WHERE Alan KOŞUL Değer KOŞUL Operatörleri: = Eşit <> Eşit değil > Büyüktür < Küçüktür >= Büyük ya da eşittir <= Küçük ya da eşittir BETWEEN …. AND …. Belirli değerler arasında LIKE Belirli bir karakter dizisi (parçası)
SQL-Veri Erişim • SELECT * FROM Adresler WHERE sehir = 'HATAY '; • SELECT ad, soyad, yas FROM Adresler WHERE yas < 24; • SELECT * FROM Adresler WHERE adres LIKE '%ulu%'; • SELECT * FROM Adresler WHERE adres LIKE 'ulu%'; • SELECT * FROM Adresler WHERE adres LIKE '%ulu'; • SELECT * FROM Adresler WHERE soyad BETWEEN 'A' AND 'D';
SQL-Veri Erişim • SELECT * FROM Adresler WHERE soyad NOT BETWEEN 'A' AND 'D'; • SELECT * FROM Adresler WHERE sehir = 'HATAY' AND yas = 24; • SELECT * FROM Adresler ORDER BY ad; • SELECT * FROM Adresler ORDER BY yas DESC; • SELECT * FROM Adresler ORDER BY yas DESC LIMIT 2, 4;
SQL-Veri Giriş • INSERT INTO Tablo(Alan1, Alan2, Alan3, …) VALUES(Değer1, Değer2, Değer3, …) • INSERT INTO Adresler(no, ad, soyad, adres, sehir, yas) VALUES(NULL, 'Şükrü', 'KAYA', 'Karacabey', 'BURSA', 21);
SQL-Veri Düzeltme • UPDATE Tablo SET Alan1=Değer1, Alan2=Değer2, Alan3=Değer3, …[WHERE Alan KOŞUL Değer] • UPDATE Adresler SET sehir = 'HATAY', adres = 'Uludağ Ünv. Karacabey MYO' WHERE ad = 'Şükrü' AND soyad = 'KAYA';
SQL-Veri Silme • DELETE FROM Tablo WHERE Alan KOŞUL Değer • DELETE FROM Adresler WHERE ad = 'Şükrü' AND soyad <> 'KAYA';
SQL-Bazı SQL Fonksiyonları • MIN(Alan) • SELECT MIN(yas) FROM Adresler; • MAX(Alan) • SELECT MAX(yas) FROM Adresler; • AVG(Alan) • SELECT AVG(yas) FROM Adresler; • SUM(Alan) • SELECT SUM(maas) FROM Adresler;