Schauen wir uns zunächst den Code an: ALTER TABLE reportblockdetail ADD KEY taskcode (Aufgabencode) ALTER TABLE reportblockdetail DROP KEY taskcode Nun, hier wird es tatsächlich verwirrend. Bei der Verwendung von MySQL achten wir möglicherweise nicht auf dieses Problem, da sie in den meisten Fällen ähnliche Effekte aufweisen, aber dennoch nicht gleichgesetzt werden können (zumindest theoretisch). Der Unterschied zwischen einem Index und einem Schlüssel liegt in ihren unterschiedlichen Ausgangspunkten. Der Index ist für die Aufrechterhaltung der Such- und Betriebsgeschwindigkeit der Tabelle verantwortlich, während der Schlüssel für die Aufrechterhaltung der Integrität der Tabelle verantwortlich ist. Wenn diese Verwirrung bei Ihnen auftritt, liegt dies wahrscheinlich an einem seltsamen Phänomen in MySQL:
Das ist doch seltsam, oder? Es sind zwei verschiedene Dinge, aber wenn sie erschaffen werden, werden sie miteinander verbunden. Warum ist das so? Denn die Gründe sind:
Lassen Sie uns abschließend zusammenfassen:
Theoretisch können MySQL-Schlüssel und -Index nicht gleichgesetzt werden, sie sind nicht dasselbe, aber in der tatsächlichen Verwendung gibt es grundsätzlich keinen Unterschied zwischen ihnen. Inhaltserweiterung: Unterschied zwischen Schlüssel und Primärschlüssel CREATE TABLE wh_logrecord ( logrecord_id int(11) NICHT NULL auto_increment, Benutzername varchar(100) Standard NULL, operation_time datetime Standard NULL, logrecord_operation varchar(100) Standardwert NULL, PRIMÄRSCHLÜSSEL (logrecord_id), SCHLÜSSEL wh_logrecord_user_name (Benutzername) ) Unterschied zwischen KEY und INDEX Hinweis: Dieser Teil verwirrt mich immer noch. Der Unterschied zwischen Index und Schlüssel in MySQL Der Schlüssel ist der Schlüsselwert, der Teil der relationalen Modelltheorie ist. Beispielsweise gibt es Primärschlüssel und Fremdschlüssel, die für Datenintegritätsprüfungen und Eindeutigkeitsbeschränkungen verwendet werden. Der Index befindet sich auf Implementierungsebene. Sie können beispielsweise einen Index für jede Spalte in einer Tabelle erstellen. Wenn sich die indizierte Spalte dann in der Where-Bedingung in der SQL-Anweisung befindet, können Sie die Daten schnell finden und abrufen. Was den Unique Index betrifft, handelt es sich lediglich um einen Indextyp. Die Einrichtung eines Unique Index bedeutet, dass die Daten in dieser Spalte nicht wiederholt werden können. Ich vermute, dass MySQL weitere spezielle Optimierungen für Indizes vom Typ Unique Index vornehmen kann. Daher muss sich der Schlüssel beim Entwerfen einer Tabelle nur auf Modellebene befinden, und wenn eine Abfrageoptimierung erforderlich ist, können Indizes für die relevanten Spalten erstellt werden. Darüber hinaus hat MySQL für eine Primärschlüsselspalte automatisch einen eindeutigen Index erstellt, sodass kein erneuter Index dafür erforderlich ist. Oben finden Sie detaillierte Informationen zum Unterschied zwischen Schlüssel und Index in MySQL. Weitere Informationen zum Unterschied zwischen Schlüssel und Index in MySQL finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM! Das könnte Sie auch interessieren:
|
<<: Fallstudie zu JavaScript-Funktionsaufrufen, Apply- und Bind-Methoden
>>: So installieren Sie Elasticsearch und Kibana in Docker
Heute bin ich auf ein kleines Problem gestoßen, a...
CSS-Stile html,Text{ Breite: 100 %; Höhe: 100%; R...
<br />Ursprünglicher Link: http://www.dudo.o...
1. Heute Nachmittag musste ich aufgrund der Anfor...
Inhaltsverzeichnis 1. Dies deutet darauf hin 2. Ä...
In diesem Artikel wird der spezifische JavaScript...
Bei der Web-Frontend-Entwicklung ist es unvermeidl...
In diesem Artikel wird der spezifische Code des W...
Problembeschreibung: Ich habe einen Desktop-Compu...
Dieser Artikel beschreibt die Installation des Sy...
Vom Backend zum Frontend: was für eine Tragödie. A...
Die Warnhinweise in diesem Artikel haben nichts m...
Nach der Installation des neuesten Windows 10-Upd...
CocosCreator-Version: 2.3.4 Die meisten Spiele ve...
Inhaltsverzeichnis Was ist Vuex? Vuex-Nutzungszyk...