Atomik İşlem / Transaction
MySQL her iki tür işlemi de desteklediği için kullanıcı, uygulamasında atomik işlemlerin hızına mı transaction özelliklerine mi ihtiyacı olduğuna karar verebilir. Seçimler tablo bazında yapılabilir.
Transaction'lı tablo ile atomik işlemle çalışan tablo arasındaki en büyük fark performans konusunda oluşur. Transactionlı tablolar çalışırken daha fazla bellek, daha fazla disk alanı ve daha fazla işlemci gücü harcar.
Eğer uygulamalarınız kritik durumlarda COMMIT yapmaya değil de, ROLLBACK yapmaya göre yazıldıysa transaction kullanmak daha elverişli olabilir.
Çoğunlukla kritik transactionla çalışan güncellemeler, atomik olarak çalışacak şekilde tekrar yazılabilir. Transactionların çözdüğü tüm bütünlük problemleri LOCK TABLES, INSERT DELAYED ve benzeri yöntemlerle çözülebilir.
BETWEEN iki değer arasında olanları getirmek
SELECT * FROM `ogrenci` WHERE yas BETWEEN 10 and 15
buradaki iki değerde 10 ve 15 e eşit olanlarıda getirir
Between komutu
BETWEEN Min AND Max: Belirtilen Min. ve Max. değerler arasında değer alabilir. Yani belirtilen iki değer arasında değerler alır. Örneğin yaşı 18 ile 30 arasındaki personeller;
SELECT ad ||' ' ||soyad FROM Personel_Table
WHERE yas BETWEEN 18 AND 30;
BETWEEN Komutu
SELECT ENAME,SAL FROM EMP WHERE SAl BETWEEN 1 000 AND 2000;
Değeri 1000'e eşit ve 1000'den büyük ve 2000'e eşit ve 2000'den küçük olanları seçer.
bir ay öncesine kadar yapılmış kayıtları getirmek
select * from tabloadi where `tarih` <= DATE_SUB(CURDATE(), INTERVAL 1 MONTH)
bir gün öncesine kadar yapılmış kayıtları getirmek
select * from tabloadi where `tarih` <= DATE_SUB(CURDATE(), INTERVAL 1 DAY)
Birleştirme işleci
Birleştirme işleci (||) Kolonlardan gelen değerleri yan yana yapıştırmak mümkündür. "||" Işleci ile
kolonlar arasında boşluk olmadığına dikkat ediniz.
SELECT EMPNOII'-'IIENAME CALISAN,'Calistigi bolum', DEPTNO BLM. FROM EMP;
Bütün Veri Tabanlarını GZIP Formatında Sıkıştırarak Yedeklemek
mysqldump --opt -u kullanıcı -p şifre --host=sunucu --all-databases |gzip > yedek.sql
Büyük boyutlu mysql veritabanını taşımak
İlk değerde verilen değere, ikinci değer kadar ay ekler.
sysdate 11/05/2008
add_months(sysdate,3)
add_months 15/09/2008
Call To Unsupported Or Undefined Function Mysql_connect() Hatası
Eğer mysql'e bağlanırken "Call to unsupported or undefined function mysql_connect();" hatası alıyorsanız. Eğer sunucunuz Windows tabanlı ise PHP kurulumunuz mysql desteği ile derlenmemiş (PHP 4) veya php.ini dosyasında "php_mysql.dll" desteği aktive edilmemiştir (PHP 5).
Eğer yeniden kuruluma yetkiniz yoksa veya bahsi geçen "php.ini" dosyasına erişemiyorsanız. Aşağıdaki yöntemi kullanarak çalışma anında mysql desteği kazanabilrsiniz. Aşağıdaki komutu mysql_connect(); komutundan önce (mümkünse olabildiği kadar başa) eklemeniz gerekmekte.