MySQL’in 8.x sürümünden midir bilmiyorum, yıllardır kullandığım ücretsiz SequelPro bu sürümdeki sunuculara bağlanabiliyor ama herhangi bir db gösteremiyordu. Kendi lokalimde de aynı şey olunca ancak sürüm mevzusu kafama dank etti. Bu sorun ilk ortaya çıktığında kurduğum bir kaç alternatif MySQL istemcisi arasından TablePlus‘ı kullanmaya başlamıştım. Ücretsiz sürümünde sadece iki sekme açabiliyor olmak giderek problem oluyordu. […]
Read MorePHP’de kullandığımız strip_tags() fonksiyonu parametre olarak aldığı metindeki tüm HTML taglarını ortadan kaldırıp sadece metin bilgisinin kalmasını sağlıyordu. Bu fonksiyona MySQL’de de ihtiyaç duyduğunuz oldu mu? Benim oldu. Buyrun burdan yakın efendim: delimiter ;; CREATE FUNCTION strip_tags2(str text) RETURNS text CHARSET utf8 BEGIN DECLARE start, end INT DEFAULT 1; LOOP SET start […]
Read MoreSQL sorgularında “where siparis_id in (2,10,1,3)” gibi yapılar pek tasvip edilmese de, zorunlu kaldığınız durumlar olabilir. Eğer nihayi çıktınızı da bu sırada görmek istiyorsanız sorgunun en sonuna order by FIND_IN_SET(siparis_id, ‘2,10,1,3’) yazmanız yeterli.
Read MoreMySQL view’ları siz view’i oluşturduğunuz tabloda yapısal değişiklikler yaptığınızda bozulurlar. Kullandığınız veritabanı istemcisine bağlı olarak MySQL’deki bozuk viewlarınızı oluşturan sorguyu göremeyebilirsiniz. PhpMyAdmin gösterir mesela. Göremediğiniz view’ın içeriğini not almamışsanız düzeltmek için epey terlemeniz gerekir. Eğer istemciniz bozuk view’ları göstermiyorsa şu query’i kullanarak view detayını bozuk da olsa alabilirsiniz. select view_definition from information_schema.views where table_name = […]
Read Moreİyi kötü 11 yıldır PHP-MySQL-PostgreSQL ile uğraşıyorum. Binlerce kez tablo şeklinde listeler hazırlamışımdır; sipariş listesi, müşteri listesi gibi. Genel olarak benzese de aslında sipariş listesi ile müşteri listesi ayrı yapıdadır. Müşteri listesi tek tablodan ibaret olabilir. Müşterinin adı, soyadı, adresi, telefonu vs. Bunları alt alta listelemekte hiçbir beis yok. Ama sipariş listesi öyle değildir. Siparişin […]
Read MoreMySQL ile tanışalı 10 seneyi geçti; şu hayat kurtaran “ignore” ifadesine bir kere bile denk gelmedim. Bu gece mühim bir işlemi PHP’ye bırakmaksızın sadece veritabanı üzerinden halledeyim diye uğraşırken -kabaca ifadeyle belli bir kriterdeki verileri bir tablodan başka bir tabloya arşivliyordum- hedef tablodaki unique indexler yüzünden canım sorgum “duplicate error” alıyor ve canımı sıkıyordu. Geçen […]
Read MoreBir önceki yazıda MySQL için split_str() fonksiyonunu oluşturmuştuk. Kelimeleri verdiğimiz karaktere göre bölüyordu. Amacımız; ad ve soyad değerleri tek bir sütunda isim olarak verildiğinde bu isim bilgisinden ad ve soyadı ayrıştırabilmek idi. split_str() fonksiyonu datayı istediğimiz karaktere göre (örneğin boşluk karakteri) bölebiliyor ve ortaya çıkan gruplardan hangisini görmek istiyorsak onu almamızı sağlıyor. Ama problemimiz için […]
Read MoreExcel’den aldığım bir veriyi hazırladığım bir tabloya aktarmam gerekiyordu. Tablomda ad ve soyad sütunları ayrı ayrı olacak şekilde tasarlanmıştı ama aktarmak istediğim Excel dosyasında isim olarak tek sütun vardı. İlk iş olarak Excel dosyasını phpmyadmin yardımıyla komple bir tablo olarak veritabanına yükledim. Aktarma için kaynak tablodan select yapıp hedef tabloya insert uygulayacaktım ama bu ad, […]
Read MoreHostinginden ve teknik desteğinden sorumlu olduğunuz bir blog var. Müşterinizi kırmamak için makul isteklerine “peki” demeniz gerekiyor. Müşteri “siteyi sizin sunucunuza taşıdık, gayet güzel ama bazı dosyalar koymuştum, onlara tıklayınca indirme penceresi açılmıyor. Neden?” diye soruyor. Web sitesi üzerinden kırık linki denediğimde sorun hemen kendini gösteriyor. Link eski sunucunun “ip adresini” gösterecek sekilde verilmiş. Yeni […]
Read MoreBir önceki yazımızda MacPorts kullanarak MySQL ve PostgreSQL destekli bir Apache2-PHP5 kurulumu gerçekleştirmiştik. Bu yazımızda ise MacPorts ile MySQL kurulumunu öğreneceğiz. Öğreneceğiz diyorum çünkü ben de bu işlemleri henüz yeni kurduğum macos üzerinde ilk defa yapıyorum. Hazır yapmışken bir yere kaydedeyim de ileride tekrar nasıl yaptığımı hatırlamak kolay olsun istedim. BT Hayat’a da yeni bir […]
Read More| Powered by WordPress | Theme by TheBootstrapThemes