MySQL ist als wichtige Kraft in den Datenbanken überall in unseren verschiedenen Systemen vorhanden. Aber nur weil Sie wissen, dass Sie es verwenden können, heißt das nicht, dass Sie die Details kennen. Lassen Sie uns also eine Bestandsaufnahme einiger Dinge machen, denen wir normalerweise nicht viel Aufmerksamkeit schenken, erstens aus Spaß und zweitens, um zu verhindern, dass wir uns darauf einlassen Fallstricke.
Haftungsausschluss: Wenn Sie die Details wissen möchten, lesen Sie den Quellcode. Ich habe diese Fähigkeit wirklich nicht, daher kann ich über einige Dinge nur aus einer einseitigen Perspektive sprechen!
1. Groß- und Kleinschreibung wird nicht berücksichtigt (Feldname)
MySQL-Abfragefeldnamen unterscheiden nicht zwischen Groß- und Kleinschreibung, der Abfrageinhalt unterscheidet jedoch nicht zwischen Groß- und Kleinschreibung Wenn Sie Unterstriche zum Benennen verwenden können, verwenden Sie bei der Benennung keine Unterscheidung nach Groß- und Kleinschreibung, z. B.:
SELECT uid, v_state FROM all_user WHERE username = 'sunyue';
SELECT uid,v_state FROM all_user WHERE USERNAME = 'sunyue'; // Wie beim vorherigen Anweisungsergebnis wird bei den Feldern nicht zwischen Groß- und Kleinschreibung unterschieden
SELECT uid,v_state FROM all_user WHERE USERname = 'SUNYUE'; Schreiben Sie
Code kopieren
2. Fuzzy-Matching ([_] entspricht jedem Zeichen)
Obwohl Fuzzy-Matching hat eine gewisse reguläre Bedeutung, Sie können es in der Datenbank nicht so frei abgleichen wie einen regulären Treffer. Versuchen Sie einfach, den Abgleich so weit wie möglich zu vereinfachen! (Zusätzliches Substantiv: Volltextsuche Sphinx)
SELECT uid,v_state FROM all_user WHERE USERNAME LIKE 'su_yue'; //Underscore [_] entspricht einem beliebigen Single Zeichen
SELECT uid,v_state FROM all_user WHERE USERNAME LIKE 'su%yue'; //% entspricht einer beliebigen Anzahl von Zeichen
SELECT uid ,v_state FROM all_user WHERE USERNAME NOT LIKE 'su%'; /t like Informationen nicht enthalten
Code kopieren
3. So erraten Sie eine Funktion
Als relationale Datenbank richtet sich MySQL an normale Entwickler, sodass alles so benutzerfreundlich wie möglich ist. Wenn Sie also nicht wissen, was eine bestimmte Funktion ist, können Sie sie vielleicht erraten, denn wenn eine Funktion es für andere unmöglich macht, sie zu erraten, dann handelt es sich möglicherweise um einen fehlgeschlagenen Entwurf. Für MySQL können Sie sich leicht vorstellen, wie Sie eine relationale Abfrage schreiben, solange Ihr Englischniveau etwas besser ist. Daher hängt die Fähigkeit zum Erraten von Ihrem Englischniveau ab, hahaha! ! !
4. Ersetzen in Syntax
Ersetzen in ist eine sehr grobe Einfügemethode, die jedoch auch in geeigneten Szenarien verwendet werden muss. Beispielsweise sollten einige Daten, die jederzeit überschrieben werden müssen, ersetzt werden, bei einigen automatisch inkrementierten Tabellen jedoch Sie sollten die Verwendung vermeiden, da dies eine Verschwendung von ID darstellt und die Verwendung von „Ersetzen“ in der Duplikat-Schlüsselaktualisierungssyntax möglicherweise nicht erforderlich ist
Diese Schreibmethode ist relativ sanft, aber die Geschwindigkeit ist definitiv langsamer. Es wird gesagt, dass nur MySQL über diese Funktion verfügt. Wenn Sie vor dem Einfügen nicht überprüfen möchten, ob die Daten bereits vorhanden sind, ist dies möglicherweise eine gute Wahl.6. Syntax erklären
Dies ist eine effektive Möglichkeit, den Abfrageeffekt zu überprüfen. Tatsächlich verwende ich diese Funktion selten, aber wenn ein Entwickler diese Funktion häufig verwendet Dann glaube ich, dass er ein großartiger Mensch sein muss. Mit diesem Befehl können Sie feststellen, ob die von Ihnen geschriebene Anweisung optimiert ist, und wenn nicht, in welche Richtung. Es sollte gesagt werden, dass Sie die Ergebnisse umso besser kennen, je öfter Sie es verwenden, also verwenden Sie es einfach häufiger!7. Indexlänge
Die maximale Indexlänge von myisam beträgt 1000 Bytes und die maximale Indexlänge von innodb beträgt 767 Bytes! Seien Sie vorsichtig bei der Verwendung, wenn es den Bereich überschreitet, wird es die Erwartungen übertreffen!8. Kopie der Bibliothek
1) Daten direkt mit dem mit MySQL gelieferten Datenbanksicherungs- und Wiederherstellungsbefehl2) Dateien direkt nach kopieren der Zielserver (Achten Sie auf das Prozessbelegungsproblem);
3) Ich persönlich halte die zweite Methode für die einfachste!9. Partitionierung
Für einige Tabellen, die sehr groß sein können, sind Partitionierungsvorgänge erforderlich. Wenn dies erforderlich ist, müssen Sie mindestens einen hinzufügen Partition, sonst ist die Partition später nicht mehr bedienbar. (Zumindest denke ich)10. Langsame Abfrage
Langsame Abfrage, dies ist ein Problem der Leistungsüberwachung. Wenn die Serverleistung zu schlecht ist und bei der Fehlerbehebung eine Aufzeichnung einer solchen langsamen Abfrage vorliegt, ist die Fehlerbehebung effektiver!
11. Binlog
Binlog, diese Funktion wird im Allgemeinen für die Datenwiederherstellung, die Aufzeichnung von Datenvorgängen usw. verwendet.
12. Andere Ansichten, gespeicherte Prozeduren, Ereignisse, die Sie kennen sollten...
Ansichten, Ereignisse usw., das sind einige erweiterte Anwendungen, ich habe viele gefunden Projekte Diese Art von Anwendung gibt es überhaupt nicht, und zumindest die Projekte, auf die ich gestoßen bin, sind fast nie beteiligt, oder wenn doch, werden sie beiläufig von anderen durchgeführt! Dennoch müssen Sie die erweiterten Funktionen verstehen, ob sie nun nützlich sind oder nicht!
13. Verfügbare Tools
phpMyAdmin ist als entfernte und sichere Möglichkeit, die Datenbank zu betreiben, immer noch sehr gut, aber als lokaler Betrieb ist es ein bisschen ungeschickt; sqlyog, obwohl die Schnittstelle altmodisch ist, ist sie immer noch relativ praktisch; man muss sich jedoch an die verschiedenen Ausdrucksformen anpassen. Ich denke, niemand wird die Befehlszeile direkt für Operationen verwenden , aber die Befehlszeile ist von grundlegender Bedeutung!
Es gibt viele Dinge, die vertieft werden müssen. Wenn Sie Zeit und Fähigkeiten haben, sollten Sie sich mit dem Quellcode befassen!
Das Obige ist der Inhalt von MySQL, der von uns oft missverstanden wird. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!