PHPMyAdmin MySQL uyarılar göstermek için almak nasıl?

4 Cevap php

Ben uzak bir veritabanını güncelleyerek kolaylık için PHPMyAdmin kullanın.

Ama son zamanlarda ben onun listesinde dize ile bir SET alanı değil güncellenmesi ve sorun fark değil bazı utanç verici belaya girdi, varsayılan olarak, uyarılar göstermek değil.

Ben (Dreamhost varsayılan kurulum) 2.11.9.1 kullanıyorum.

PHPMyAdmin wiki üzerinde bu version 2.9.0 bir özelliği olarak ve hatta 2.10.2 bir özelliği olarak "tüm uyarılara Display" "Display uyarıları" listeler - ama nasıl ben aslında bu açmak mı? Dokümantasyon büyük değildir.

4 Cevap

Ben Dreamhost size phpMyAdmin yükleme için yapılandırma dosyasına erişim sağlar inanmıyorum. Ancak, kolayca their website gelen kaynak indirme ve sadece (örneğin your-domain.com/phpma) de erişmek istediğiniz dizine untarring tarafından phpMyAdmin'in kendi kurulum yapabilirsiniz. Ardından, website's instructions for editing your config file (siz sordunuz gibi sağlayan uyarıları içermelidir) izleyin.

Ben sadece aynı şeyi arıyordum.

I INSERTs standart phpMyAdmin 'insert' formunu kullanarak çalıştırdığınızda, satır eklenir alacağı ancak kırmızı çubuk herhangi bir uyarı belirten görünür. Ama ben bir bulk insert, hiçbir uyarı görünür vermedi ve yeşil bir bar sadece etkilenen satır sayısı (aslında olmayabilir zaman, size tüm başarıyla gitmişti izlenimi veren) diyerek yerine göründü .

Ben elle SHOW WARNINGS komutu göndermek zorunda bulundu. Bu sorguyu çalıştırırken Örneğin, ben phpMyAdmin SQL kutusuna hem ifadeler koymak.

INSERT INTO test2 SELECT * FROM test1;
SHOW WARNINGS;

Bu, aşağıdaki gibi uyarıların listesini verdi ...

Level    Code   Message
Warning  1265   Data truncated for column 'a' at row 1
Warning  1265   Data truncated for column 'a' at row 3
Warning  1265   Data truncated for column 'b' at row 3
Warning  1366   Incorrect integer value: 'x' for column 'b' at row...


Things to note:

  • Daha sonra SHOW WARNINGS komutunu çalıştırmak değil, boş görünecektir. Eğer "Git" tıkladığınızda sizin ilk sorgu ile kutusunda olmalıdır. MySQL sadece koştu son sorgu için uyarıları tutmasıdır. Eğer bir bağlantıyı veya düğmeyi phpMyAdmin tıklayın her zaman DB diğer sorgular her türlü çalışır ve böylece önceki uyarıların kaybolur.
  • phpMyAdmin özel bir sorgudan birden sonuçları gösteren NOT desteği yok. Yani bir SQL komut olarak bunu yapar NOT iş ... (sürüm 3.4.10.1 itibariyle)

    INSERT INTO test2 VALUES ('my text', 'something else');
    SHOW WARNINGS;    # you won't see the warnings from here
    INSERT INTO test2 VALUES ('my text', 'something else');
    SHOW WARNINGS;
    

    Yukarıdaki yöntem phpMyAdmin çalışmayacak olsa da, SHOULD MySQL komut satırı istemcisi iyi çalışır. Yani gerekirse kullanırız.

Birden ekler var ve tüm uyarıları göstermek istiyorsanız, tek bir INSERT ifadesi olarak birlikte zincire onları var. Örneğin:

INSERT INTO test2 VALUES 
('my text', 'something else'), 
('my text', 'something else');
SHOW WARNINGS;

Ben yanlış olabilir ama ben doğru hatırlıyorsam eğer bunu etkinleştirmek için phpMyAdmin yapılandırma dosyasına erişimi olması gerekir.

follow the website's instructions for editing your config file (which should include enabling warnings like you've asked).

Evet evet, bu olmalıdır. Ama config dosyasında bunu görmüyorum ve sana bağlı sayfasında görmüyorum. Zaten açık yerlerde bilgi için baktım, inan bana.