Asp ve Php İle MySql Programlama

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.. Oluşturduğumuz database'e bilgi göndermek ve almak için bu komutlara ihtiyacımız var... Öncelikle ASP ve PHP kullanarak nasıl MySQL bağlantısı yaparız bunu öğrenelim.

MySQLe Bağlanmak

ASP Kullanarak MySQL Bağlantısı yapmak:

Asagıdaki örnekte goruldugu gibi ADODB Bağlantısı yapılıyor.Asagıdaki bölümü oldugu gibi kopyalayn.Daha sonra satır olarak girilen yerleri kendi veritabanınızın özelliklerine göre değiştirin.Burada SERVER= sunucu adresi/IP, UID= veritabanı kullanıcı adı, PWD= veritaban kullanıcı sifresi,DATABASE= veritabanı adı olarak girilir.Eger her şey dogru ise baglantı saglanacaktır.

<%
BaglantiSatiri = "Driver={MySQL ODBC 3.51 Driver};Description=mysql;SERVER=localhost;UID=root;PWD=pass;DATABASE=db"
Set Baglanti = Server.CreateObject("ADODB.Connection")
Baglanti.Open BaglantiSatiri
%>

PHP Kullanarak MySQL Baglantısı yapmak:

Asagıdaki sekilde mysql_connect("SERVER-IP","DB-USERNAME", "DB-USERPASS") seklinde sırası ile ip,kullanıcı adı ve sifresi yazılır.Bir alt satıra gecilip veritabanı secilir.Bu sekilde baglantı saglanmıs olur...

mysql_connect("localhost","root","pass");"
mysql_select_db("dbname");
?>

MySQL Komutlar - Baglantı Düzeyi

SELECT

Bir tabloyu secmek icin kullanılır.Tablodaki tüm veriler alınmıs olacaktır.

Örnegin:

SELECT * FROM tablo_adi

Satır ile gosterilen yer,verileri alacagımız tablonun adıdır.Eger verileri herhangi bir özelligine gore sıralayıp almak istiyorsak sonuna bazı degikenler ekleyerek bunu yapabiliriz. Örnegin bilgi aldıgmız tablomuzu sekildeki gibi olsun:

user_id(int10) user_name(varchar45) user_age(int3)
1 Andrei 10
2 ComputerWolf 12
3 HolyOne 13

Bu tabloda isim-yaş seklinde veriler girilmis ve hepsi default_key olarak bir numara ile numaralandırılmıs. Buradan veri alırken user_id numarasına gre bize veriler gelecektir.Eger user_id bolumun sondan baslamak üzere almak istersek:

SELECT * FROM tablo_adi ORDER BY user_id DESC

Yukarıda DESC son kayıttan itibaren alma anlamına gelmektedir.Eger orası ASC olsaydı bu kez ilk kayıttan verileri sıralayacaktı.Bunu ORDER BY tablo_adi ile yapıyoruz.Peki daha özel bir secim yapmak istersek;mesela sadece yaşı 12 olanları secmek istersek nasıl yaparız ?

Asagıdaki komutu inceleyelim:

SELECT * FROM tablo_adi WHERE user_age = 12

WHERE eklentisi "nerede boyle varsa" gibi bir anlama geliyor.Örnekte user_age sütununda 12 olan degerleri göstermesi isteniyor.

INSERT INTO

Tablomuza yeni bir kayıt eklemek icin kullanırız. Örnegin yukarıdaki tabloya 13 Yasında olan Age bilgisini ekleyelim:

INSERT INTO tablo_adi ( user_name, user_age ) VALUES(Age, 13)

Bu sekilde tablomuza Age-13 yeni kayıtını ekledik.Yukarıda tablo_adinin yanındaki parantez ivinde hangi sütunların degeri belirleniyor belirtiriz.VALUES sonrası parantezde ise bu verileri yazarız.

DELETE

Eklenmis bir kayıt silmek icin kullanırız:

DELETE FROM tablo_adi WHERE user_name = Andrei

Komut, user_name sütunundaki Andrei deerine sahip tüm kayıtları siler...

UPDATE, SET

Herhangi bir tablodaki bilgiyi degistirmek icin kullanırız.

Örnegin Age-13 olarak az önce girdigimiz bilgide bir guncelleme yapıcaz;yeni yas 14 olacak.Bu durumda komut satırına asagıdaki gibi bir ileti gondermeliyiz.

UPDATE tablo_adi SET user_age = 14 WHERE user_name = Andrei

Yukarıdaki örnek adı user_name sütunu Andrei olan tum user_age (yas) degiskenlerini 14 yapar.Bu nedenle Andrei'nin user_id bilgisini kullanmak daha mantıklıdır.Böylece sadece onun yası 14'e cevrilir.Eger WHERE kullanmasaydık bu kez tum user_age (yas) sütunu 14 olacaktı...

ALTER TABLE

Tabloya yeni bir sütun eklemek ya da silmek icin kullanırız.

Örnegin bu tabloya bir de kullancı dogum yılını ekleyelim.Bunun icin asagıdaki komutu inceleyelim:

ALTER TABLE tablo_adi ADD user_birthyear INT (4)

Bu sekilde INT 4 yani 4 haneli bir sayısal deger yerlestirebilecegimiz bir sütun olusturduk ve adını user_birthyear koyduk.Peki ekledigimiz sütunu silmek istersek ne yaparız? Bu kez de DROP kullanırız ve sütun özelligini eklemeden sadece adını yazarız...

ALTER TABLE tablo_adi DROP user_birthyear

MySQL Komutlarını Kullanmak

Bir MySQL program kullanarak komutlar kullanabileceginiz gibi (MySQL Front, MySQL Administrator vb.) eger bir web isleminde kullanıyorsanız:

ASP icin:

Not: Altı cizili Baglanti yazan yer bizim daha önceden belirttigimiz baglantı komutudur.

<%
Set Degisken1 = "SELECT * FROM tablo_adi"
Set Degisken2 = Baglanti.Execute(Degisken1)
If Degiken2.eof and Degisken3.bof Then
Eger kayıt bulunamazsa.
else
Eger bulunan kayıt varsa.
End If
%>

PHP icin:

Asagıdaki $sql ve $result bir degiskendir.$result sonucları saklamaktadr.

$sql = "SELECT * FROM tablo_adi"
$result = mysql_query($sql);
?>

Simdilik bilmeyenler için bi ön bilgi olmustur umarım...

Tarih:
Hit: 5248
Yazar: Andrei



Yorumlar


Siftahı yapan siz olun
Yorum yapabilmek için üye girişi yapmalısınız.