MySQL’in Temelleri: PhpmyAdmin’de özel bir Select deyimi yazın
Belki de bu ay yazacağım en garip benzetme: Birçok WordPress geliştiricisi için MySQL omuriliğimize biraz benzer. Nasıl soruyorsun? Sağlıklı…
Bu altyapının çok önemli bir parçası – onsuz iyi işlev görecek çok az.
Önem dışında, sık sık bahsedilmeyebilir. Bunun nedeni kısmen, başka bir katmanın arkasına koymak için çok iyi işlerden yararlandığımız içindir, bu yüzden düzenli olarak düşünmemize gerek yoktur.
Ne yaptığınızı gerçekten bilmiyorsanız, onunla çalışmaktan çok korkabilirsin ve belki de olmalı.
Her iyi doktor omurları anlıyor ve bu hafta, MySQL’in PHPMyAdmin Web istemcisinde bir seçme ifadesi çalıştırmasıyla başlayarak yararlı, pratik ve güvenli bazı kullanımlarını keşfediyoruz.
MySQL ve PhpmyAdmin MySQL’e kısa giriş, WordPress veritabanlarını düzenleyen teknik bir sistemdir. Varsayılan olarak, her WordPress sitesi, verilerin çoğunu – gönderme, kullanıcı bilgileri, kalıcı bağlantılar ve diğerleri – MySQL veritabanında saklar. Bu veritabanı, WordPress dosya sistemindeki ana dosyadan (PHP, JS ve CSS dosyaları gibi) çok farklı bir şekilde saklanır ve erişilir – hatta farklı bilgisayarlarda saklanabilir. WordPress geliştiricileri için, MySQL’in en hızlı tanımı “WordPress veritabanını düzenleyen teknik sistemdir”: başka bir deyişle, veritabanının nasıl oluşturulduğu, düzenlendiği, depolandığı, erişildiği ve değiştirildiği. Bu iki bölüm anlamına gelir:
Veritabanı Teknik Yapısının Ayrıntıları: Nasıl Sıra, Sütun ve Tablo Web sunucusunda bit olarak saklanır. Bu yapıya MySQL denir.
Veritabanının içeriğine erişmek ve değiştirmek için SQL adı verilen bir programlama dili. Bugün yaptığımız gibi “MySQL yazmayı” öğrenin, SQL programlama dilini öğrenmek ve MySQL ortamında uygulamak anlamına gelir: başka bir deyişle, öğrenmek WordPress sitenizin MySQL veritabanı içeriğine erişmek veya değiştirmek için SQL kod parçalarını (SQL ifadesi veya SQL Kueri olarak adlandırılır) yazın. Kulağa önemli geliyor. Bunu neden henüz öğrenmedim? SQL oldukça korkutucu görünen bir dildir. Bir göz atalım:
T1.Genreid’de T3 olarak T1 -> Sol Birleştir türleri olarak CDS’den T2.Artist, T1.Title, T3.Genre seçin. t3.Genre = ‘pop’); İyi keder! Bu arada, yanlış SQL sorgularını çalıştırmak, veritabanınızı silmenin veya zarar vermenin iyi bir yoludur ve sitenizi işe yaramaz hale getirir. İnsanlar MySQL’in kendisini bilmeden SQL’de bir şeyler yapmanıza izin vermek için çok uğraştılar. Çok basit olduğu için, insanlar SQL’de SQL’in kendisini bilmeden SQL’de birçok şey yapmanıza izin vermeye çalıştılar ve bu, WordPress’te doğrudan öğrenmeden çok fazla hareket edebileceğiniz anlamına geliyor. Özellikle iki SQL gizli:
Anlamak zorunda kalmadan SQL komutlarını sizin için çalıştıran WP_QURY sınıfı yöntemi gibi işlevle dolu WordPress Fonksiyon Kütüphanesi ve
Phpmyadmin.
PHPMyAdmin Enter PHPMyAdmin web sunucunuzdaki yazılımdır. CPanel barındırmanız varsa, oradan erişebilirsiniz:
Basit PhpmyAdmin işlevi: Veritabanınız için görsel bir tarayıcı ve editör oluşturmak için. Bu şuna benziyor:
Proje Örneği: “WordPress eğlencelidir” Bugünün örneği için, WordPressisfun.org adlı yeni bir site oluşturuyormuş gibi yapacağız. Site mevcut bazı wpsout içeriğine uyum sağlayacaktır, ancak yalnızca WordPress ile ilgili makaleler eğlencelidir – başka bir deyişle, WordPress ve eğlenceli kelimeler içeren yayınlar. Sitemizdeki birçok makaleyi sınavı kimden geçiren hangi makaleyi nasıl bulabiliriz? SQL deyimini seçin SECT SQL, veritabanından bilgi alır. SQL birçok ifade türüne (veya sorgu türlerine) sahiptir. En kullanışlı ve en güvenli olanlardan biri, yalnızca veritabanından bilgi alan Select’tir.
WPS_Posts’tan * seçin; WPS_Posts’taki tüm satırların her sütunu ( * “tüm”/”tüm sütunlar” anlamına gelir) alacaktır. Bu, kenar çubuğu menüsünde WPS_Posts’u tıkladığınızda sizin için PhpmyAdmin tarafından çalıştırılan bir komuttur. PHPMyAdmin MySQL Kod Düzenleyicisinde başlayalım, üst menü boyunca “SQL” üzerinden erişilebilir: Bunu (sağ altta “git” ile çalıştırın: Tüm tablolarımızı beklediğimiz gibi geri yükleyin:
SQL ile Koşullar Bu örnek için cümleler burada, tüm WPS_POSTS tablolarımızı istemiyoruz. Sadece belirli bir yazı istiyoruz – yani, belirli bir çizgi – tabloda ve buraya girdiğiniz SQL’ler.
Örneğin, örneğin sadece içeriği boş olmayan bir yazı istiyoruz. Yazacağız: WPS_Posts’tan * Post_Content’in null olmadığı; Ve ayrıca sadece yayınlanmış yayınlar istiyoruz – taslak, revizyon vb. Yok – Yayınlanan yayınlar her zaman Post_Status sütunundaki değerleri olarak yayınlama dizelerine sahiptir, bu yüzden şimdi yazıyoruz: Post_content null ve Post_status = ‘yayın’ olmadığı wps_posts’tan * seçin; Gördüğünüz gibi, bazı gereksinimler aldığında, ayrılmış ve sadece tüm gereksinimleri karşılayan bir arka satır sağlar. Post_status = ‘Publish’ bulmaktan biraz daha zor olan çalışma operatörlerimiz gibi SQL ile dizeler arayın; çünkü iki ip arasındaki tam eşleşmeyi eşleştirmek istemiyoruz. Bunun yerine, bir dize – Post_Content sütunundaki dize, WordPress ve Fun adlı iki ip içerip içermediğini görmek istiyoruz. Bunun için karmaşık bir araca ihtiyacımız var: SQL operatörleri artı % joker karakterler gibi. WordPress’i aramak için şöyle görünüyor: WPS_POSTS’tan * ‘den’%WordPress%’gibi Post_Content’i seçin; Bu seçimi açıklayalım: WPS_POSTS’DEN SELECT * “WPS_POSTS tablosundayız ve aldığımız her satırın her sütununu alacağız.”
Post_content benzeri “yalnızca Post_Content sütun içeriğinin belirlediğimiz desenle eşleştiği bir satır alacağız.”
‘%WordPress%’ desendir.
Ve desenin kendisini tarif edelim:
İki karakter aradığımız dizeyi başlatır ve bitirir.
Karakterlerin % ikisi joker karakterlerdir. “Herhangi bir uzunlukla (sıfır uzunluk dahil) herhangi bir şey, burada.”
WordPress, bu sırayla W, O, R, D, P, R, E, S, S’nin tam bir karakteridir.
Birlikte, bu model: “Her şey, ardından WordPress dizesi, ardından herhangi bir şey izler.” Diğer seçkin ifadelerle birlikte, WordPress dizesini içeren her post_content kaydını, ne olursa olsun,:
Nerede maddeyi zincirleyin ve ifademizde wordpress ve zevk istediğimizi biliyoruz.Neyse ki, fıkra ve phpmyAdmin şunu sormamızı sağlar: ‘%wordpress%’ ve post_content gibi Post_Content’den WPS_Posts’tan ‘%Fun%’;Operatörlerle ve iki koşul hazırladık: ‘%wordpress%’ gibi post_concent ‘%fun%’ gibi Post_Concent.Tekrar aldığımız her satır bu iki koşulu karşılamalıdır.Ve şimdi, taslak yayınları, revizyonları ve benzerlerini filtrelemek için yalnızca yayınlanan bir gönderi isteyeceğiz: WPS_Posts’tan * SELECT * ‘%WordPress%’ ve Post_Content gibi ‘%Fun%’ ve Post_Status = ‘Publish ‘;
Nitty-Gritty String’in karşılaştırılması ve yukarıdaki maddeleri veya SQL ifadelerini kullanmak istediğimize yaklaşmamızı sağlıyor, ancak gerçekten “WordPress” ve “Eğlence” içeren yayınları bulmaya çalışırsam, yapılması gereken daha fazla işim varmış gibi hissedeceğim . Öyleyse okumayı bırakın, öğrendiklerinizden memnunsanız, ama daha fazlasını istiyorsanız, hadi dalış yapalım! İlk olarak, “eğlenceli” kelimesi aslında orada olmasa da, “WordPress” ve “Geri Ödeme” kelimelerini içeren yayınların sonuçlarımızda görüneceğini unutmayın. Unutmayın, “(herhangi bir şey) zevk (herhangi bir şey)” ve isteğimize göre geri ödeme. Öyleyse “eğlence” den önce bir alan verelim: wps_posts’tan * ‘%wordpress%’ ve post_content gibi ‘%fun%’ ve post_status = ‘publish’ gibi seçelim; Bu daha iyi, ama yine de “WordPress” ve “PHP işlevi” içeren bir yazı alıyoruz – ama “eğlenceli” değil – çünkü “PHP işlevi” eşleşiyor “(herhangi bir şey) eğlence (herhangi bir şey). Burası her şeyin karmaşıklaştığı yerdir: sadece ‘ % Fun %’ yazamayız. Neden? Niye? Çünkü bu “çocuklar için WordPress eğlencesi” ile eşleşecektir, ancak “WordPress Fun!” ! Aradığımız boş alan değil. Yaptığım oldukça iyi bir çözüm şöyle görünüyor: WPS_Posts’tan * ‘%WordPress%’ ve (Post_Content gibi ‘%Fun%’ veya Post_Content gibi ‘%Fun,%’ gibi seçin.
Veya Post_Content ‘% Fun? % ‘Veya post_content gibi’% eğlence! % ‘Veya post_content gibi’% eğlence. %’Veya Post_Content’ %Fun ‘ %’) ve Post_Status = ‘Publish’; Braketlere ve tekrarlanan OR maddesine dikkat edin. Buradaki mantık, diğer programlama dillerinde olduğu gibi işlev görür: Parantez ve ayrılmış birkaç şeyden veya, sadece bir tanesi doğru olmalıdır, böylece sorguların uygun olması gerekir. “WordPress” ve “Eğlence” kelimelerini içeriyor: Bu benim projemse, bu, taşınacağım bir gönderi. Hemen mevcut: Regexp yukarıdaki ifadeyi sizin için çok verimsiz mi yapıyor? İyi, fark ettiniz! Bir ip yapmak Eşleşme, kendi karmaşıklığına sahip küçük bir dünya olan Regexp SQL’in bir fonksiyonudur. Plakalarımızda kaplamak, bu yüzden izlemeye devam edin. Şimdi biraz SQL biliyorsunuz! Umarım bu yazı SQL ritminin ve ritminin temel kullanımı ve PhpmyAdmin’deki WordPress MySQL veritabanında temel bir özel seçme ifadesi oluşturmaya nasıl başlayacağınızı anlamanıza izin verir. Düşünceleriniz veya sorularınız varsa, lütfen aşağıdaki yorumlarda bize sorun! Kredi görüntüsü: ve Olson