tag:forum.selfhtml.org,2005:/self Primärschlüssel nachträglich setzen – SELFHTML-Forum 2020-07-10T06:49:18Z https://forum.selfhtml.org/self/2020/jul/07/primarschlussel-nachtraglich-setzen/1773099#m1773099 Linuchs 2020-07-07T12:09:22Z 2020-07-07T12:12:29Z Primärschlüssel nachträglich setzen <p>Moin,</p> <p>vor ein paar Tagen hatten wir die Diskussion, wie man einen PRIMARY KEY nachträglich in eine Tabelle einfügen kann.</p> <p>Die „problematische Seite“ (5. Juli 2020 um 13:21 Uhr geändert) wurde wohl daraufhin neu erstellt.</p> <p>Dort wird vorausgesetzt, dass es eine Spalte gibt, die keine mehrfachen Werte enthält. Also zum PRIMARY KEY gemacht werden kann.</p> <p>Wenn doch, kann der PRIMARY KEY nicht erzeugt werden.</p> <p>Bitte ergänzt die Seite um die Möglichkeit, unabhängig von mehrfachen Daten einen PRIMARY KEY zu setzen:</p> <pre><code class="block language-sql"><span class="token keyword">ALTER</span> <span class="token keyword">TABLE</span> <span class="token identifier"><span class="token punctuation">`</span>tabelle_name<span class="token punctuation">`</span></span> <span class="token keyword">ADD</span> <span class="token identifier"><span class="token punctuation">`</span>id<span class="token punctuation">`</span></span> <span class="token keyword">INT</span> <span class="token operator">NOT</span> <span class="token boolean">NULL</span> <span class="token keyword">AUTO_INCREMENT</span><span class="token punctuation">,</span> <span class="token keyword">ADD</span> <span class="token keyword">PRIMARY</span> <span class="token keyword">KEY</span> <span class="token punctuation">(</span><span class="token identifier"><span class="token punctuation">`</span>id<span class="token punctuation">`</span></span><span class="token punctuation">)</span> </code></pre> <p>Habe ich heute ausprobiert, funktioniert.</p> <p>Linuchs</p> https://forum.selfhtml.org/self/2020/jul/07/primarschlussel-nachtraglich-setzen/1773100#m1773100 Tabellenkalk 2020-07-07T12:13:12Z 2020-07-07T12:13:12Z Primärschlüssel nachträglich setzen <p>Hallo,</p> <blockquote> <p>Bitte ergänzt die Seite</p> </blockquote> <p>Es ist ein Wiki.</p> <p>Gruß<br> Kalk</p> https://forum.selfhtml.org/self/2020/jul/07/primarschlussel-nachtraglich-setzen/1773106#m1773106 Tabellenkalk 2020-07-07T13:08:34Z 2020-07-07T13:08:34Z Primärschlüssel nachträglich setzen <p>Hallo,</p> <blockquote> <p>Bitte ergänzt die Seite um die Möglichkeit, unabhängig von mehrfachen Daten einen PRIMARY KEY zu setzen:</p> <pre><code class="block language-sql"><span class="token keyword">ALTER</span> <span class="token keyword">TABLE</span> <span class="token identifier"><span class="token punctuation">`</span>tabelle_name<span class="token punctuation">`</span></span> <span class="token keyword">ADD</span> <span class="token identifier"><span class="token punctuation">`</span>id<span class="token punctuation">`</span></span> <span class="token keyword">INT</span> <span class="token operator">NOT</span> <span class="token boolean">NULL</span> <span class="token keyword">AUTO_INCREMENT</span><span class="token punctuation">,</span> <span class="token keyword">ADD</span> <span class="token keyword">PRIMARY</span> <span class="token keyword">KEY</span> <span class="token punctuation">(</span><span class="token identifier"><span class="token punctuation">`</span>id<span class="token punctuation">`</span></span><span class="token punctuation">)</span> </code></pre> <p>Habe ich heute ausprobiert, funktioniert.</p> </blockquote> <p>Wie muss ich mir das vorstellen, gab es die Spalte <code>id</code> noch gar nicht?</p> <p>Gruß<br> Kalk</p> https://forum.selfhtml.org/self/2020/jul/07/primarschlussel-nachtraglich-setzen/1773248#m1773248 tk 2020-07-09T20:12:05Z 2020-07-09T20:12:05Z Primärschlüssel nachträglich setzen <p>Hallo Linuchs,</p> <blockquote> <p>vor ein paar Tagen hatten wir die Diskussion, wie man einen PRIMARY KEY nachträglich in eine Tabelle einfügen kann.</p> </blockquote> <p><a href="https://forum.selfhtml.org/self/2020/jul/04/nachtraglich-primery-key-setzen/1772971#m1772971" rel="noopener noreferrer">Stimmt</a>.</p> <blockquote> <p>Dort wird vorausgesetzt, dass es eine Spalte gibt, die keine mehrfachen Werte enthält. Also zum PRIMARY KEY gemacht werden kann.</p> </blockquote> <p>Die erste Version hatte den Query zum Anlegen der Spalte drin (so wie er auch in <a href="https://forum.selfhtml.org/self/2020/jul/04/nachtraglich-primery-key-setzen/1772976#m1772976" rel="noopener noreferrer">meinem Posting</a> stand), Matthias hat ihn dann aufgrund deiner <a href="https://forum.selfhtml.org/self/2020/jul/04/nachtraglich-primery-key-setzen/1772984#m1772984" rel="noopener noreferrer">Nachfrage</a> aber auf die CHANGE-Variante geändert. Ich habe jetzt mal beide Varianten reingesetzt und den Artikel gleichzeitig noch etwas ergänzt.</p> <blockquote> <pre><code class="block language-sql"><span class="token keyword">ALTER</span> <span class="token keyword">TABLE</span> <span class="token identifier"><span class="token punctuation">`</span>tabelle_name<span class="token punctuation">`</span></span> <span class="token keyword">ADD</span> <span class="token identifier"><span class="token punctuation">`</span>id<span class="token punctuation">`</span></span> <span class="token keyword">INT</span> <span class="token operator">NOT</span> <span class="token boolean">NULL</span> <span class="token keyword">AUTO_INCREMENT</span><span class="token punctuation">,</span> <span class="token keyword">ADD</span> <span class="token keyword">PRIMARY</span> <span class="token keyword">KEY</span> <span class="token punctuation">(</span><span class="token identifier"><span class="token punctuation">`</span>id<span class="token punctuation">`</span></span><span class="token punctuation">)</span> </code></pre> </blockquote> <p>Der Query ist richtig, es reicht aber eine <code>ADD</code>-Zeile (siehe Wiki). Allerdings fehlt in deinem Query die Angabe an welcher Stelle die neue Spalte stehen soll (<code>FIRST</code> oder <code>AFTER spalte</code> hinter <code>AUTO_INCREMENT</code>), ohne die wird zumindest bei mir die Spalte hinten dran gehängt.</p> <p>Gruß,<br> Tobias</p> https://forum.selfhtml.org/self/2020/jul/07/primarschlussel-nachtraglich-setzen/1773101#m1773101 Linuchs 2020-07-07T12:14:06Z 2020-07-07T12:14:06Z Primärschlüssel nachträglich setzen <p>Du meinst, ich soll das machen?</p> <p>Na schau'n mer mal, habe ich noch nie gemnacht.</p> https://forum.selfhtml.org/self/2020/jul/07/primarschlussel-nachtraglich-setzen/1773102#m1773102 Linuchs 2020-07-07T12:16:57Z 2020-07-07T12:19:22Z Primärschlüssel nachträglich setzen <p>bin angemeldet, aber wenn ich dort auf [bearbeiten] klicke, kommt</p> <p>Sie bearbeiten diese Seite unangemeldet.</p> <p>Und dann kann ich auch nur die Quellen bearbeiten, nicht den eigentlichen Text.</p> https://forum.selfhtml.org/self/2020/jul/07/primarschlussel-nachtraglich-setzen/1773104#m1773104 Tabellenkalk 2020-07-07T12:28:09Z 2020-07-07T12:28:09Z Primärschlüssel nachträglich setzen <p>Hallo,</p> <blockquote> <p>bin angemeldet, aber wenn ich dort auf [bearbeiten] klicke, kommt</p> <p>Sie bearbeiten diese Seite unangemeldet.</p> </blockquote> <p>Ich weiß nicht, wie der Anmeldevorgang abläuft. Vielleicht musst du erst freigeschaltet werden?</p> <blockquote> <p>Und dann kann ich auch nur die Quellen bearbeiten, nicht den eigentlichen Text.</p> </blockquote> <p>Es gibt fast ganz oben zwischen "Lesen" und "Fragen" den Punkt "Bearbeiten".</p> <p>Gruß<br> Kalk</p> https://forum.selfhtml.org/self/2020/jul/07/primarschlussel-nachtraglich-setzen/1773105#m1773105 Matthias Apsel matthias.apsel@selfhtml.org https://brückentage.info 2020-07-07T12:30:48Z 2020-07-07T12:30:48Z Primärschlüssel nachträglich setzen <p>Hallo Linuchs,</p> <blockquote> <p>bin angemeldet, aber wenn ich dort auf [bearbeiten] klicke, kommt</p> </blockquote> <p>hier im Forum.</p> <blockquote> <p>Sie bearbeiten diese Seite unangemeldet.</p> </blockquote> <p>dort im Wiki.</p> <p>Wiki und Forum benötigen getrennte Anmeldungen. Es ist mit vertretbarem Aufwand nicht leistbar, die Benutzerverwaltungen zusammenzuführen.</p> <p>Bis demnächst<br> Matthias</p> <div class="signature">-- <br> Du kannst das Projekt SELFHTML unterstützen,<br> indem du bei Amazon-Einkäufen <a href="https://smile.amazon.de/ch/314-570-45498" rel="nofollow noopener noreferrer">Amazon smile</a> (<a href="https://www.amazon.de/gp/help/customer/display.html?ie=UTF8&nodeId=202035970%5D" rel="nofollow noopener noreferrer">Was ist das?</a>) nutzt. </div> https://forum.selfhtml.org/self/2020/jul/07/primarschlussel-nachtraglich-setzen/1773117#m1773117 Linuchs 2020-07-07T15:43:37Z 2020-07-07T15:43:37Z Primärschlüssel nachträglich setzen <blockquote> <p>gab es die Spalte id noch gar nicht?</p> </blockquote> <p>Nein, habe eine CSV-Datei in eine leere Tabelle importiert. Da kann es in allen Spalten Duplikate oder Trinitate geben.</p> <p>Linuchs</p> https://forum.selfhtml.org/self/2020/jul/07/primarschlussel-nachtraglich-setzen/1773118#m1773118 Der Martin 2020-07-07T16:00:28Z 2020-07-07T16:00:28Z Primärschlüssel nachträglich setzen <p>Hallo,</p> <blockquote> <p>Duplikate oder Trinitate</p> </blockquote> <p><a href="https://www.duden.de/rechtschreibung/Triplikat" rel="nofollow noopener noreferrer">Triplikate</a>.</p> <p>Live long and <s>pros</s> healthy,<br>  Martin</p> <div class="signature">-- <br> Nein, ich bin kein Klugscheißer. Ich weiß es <em>wirklich</em> besser. </div> https://forum.selfhtml.org/self/2020/jul/07/primarschlussel-nachtraglich-setzen/1773120#m1773120 Rolf B 2020-07-07T16:09:53Z 2020-07-07T16:09:53Z Primärschlüssel nachträglich setzen <p>Hallo Martin,</p> <blockquote> <p>Triplikate.</p> </blockquote> <p>Oder Trinitäten...</p> <p>Jedenfalls frage ich mich, wozu man einer importierten CSV Datei nachträglich IDs anflanschen muss.</p> <p><em>Rolf</em></p> <div class="signature">-- <br> sumpsi - posui - obstruxi </div> https://forum.selfhtml.org/self/2020/jul/07/primarschlussel-nachtraglich-setzen/1773126#m1773126 Linuchs 2020-07-07T17:55:07Z 2020-07-07T17:55:07Z Primärschlüssel nachträglich setzen <p>zum Beispiel, um Sätze gezielt ändern oder löschen zu können.</p> <p>Nehmen wir das Lied La Paloma. Kommt dreimal vor. Einmal bereits mit Angabe des Komponisten. Die beiden anderen sollen weg.</p> https://forum.selfhtml.org/self/2020/jul/07/primarschlussel-nachtraglich-setzen/1773250#m1773250 Rolf B 2020-07-10T06:49:18Z 2020-07-10T07:04:09Z Primärschlüssel nachträglich setzen <p>Hallo tk,</p> <p>dem DBMS ist es ziemlich schnuppe, wo die Spalte steht. Die ID muss nicht die erste Spalte sein.</p> <p>Eine FIRST/AFTER Klausel dient hauptsächlich ästhetischen Zwecken </p> <p>Aber du hast natürlich insofern recht, dass man das zumindest erwähnen sollte. Im Wiki ist's auch drin.</p> <p><em>Rolf</em></p> <div class="signature">-- <br> sumpsi - posui - obstruxi </div>