Vinzenz Mai: primärschlüssel "resetten"??

Beitrag lesen

Hallo

das mit id ist ja sinnvoll...aber wenn man zB bilder in einer gallery mit "lücken" nummeriert wirkt es "seltsam".. ist denn "mysql_num_rows+1" & "nummerspalte" die einzige Möglichkeit??

Was meinst Du damit? Ich verstehe nur Bahnhof.

klingeklingeling.

Nein, es klingelt immer noch nicht. Es fällt kein Groschen. Nein. Ich verstehe den Satz nicht. Ich verstehe genau genommen den letzten "Satz" nicht. Immer noch nicht.

Eine so genannte benutzerfreundliche ID ist angefordert.

Was meinst Du, was bei meinem Codevorschlag in der Spalte zaehler steht? Ganz genau das: irgendeine "benutzerfreundliche" Zahl :-)

Das ist nicht ungewöhnlich. Das Gegenargument, dass man dann zwei Identifikationssysteme hätte, darf mit einem "Na und?" beantwortet werden.

Bzgl. der Lücken bei der technischen ID hast Du natürlich recht. Die benutzerfreundliche ID ist wohl nur unter Zuhilfenahme von Transaktionen zu erreichen. (Das dürfen auch hausgemachte sein, da muss der Datenserver nicht mitmachen, wenn er nicht kann (oder will).)

Nein, das verstehe ich nicht. Unabhängig davon, ob die Galerieseite zur Laufzeit generiert wird oder ein Caching-Mechanismus greift, sollte mein Vorschlag für MySQL (das ja hier im Einsatz ist) völlig ausreichend sein.

Beispiel:

mysql> set @a = 0;
Query OK, 0 rows affected (0.00 sec)

mysql> ~~~sql SELECT
    -> @a := (@a + 1) zaehler,
    -> id,
    -> landkreis
    -> FROM landkreise
    -> ORDER BY landkreis;

+---------+----+---------------------------+  
| zaehler | id | landkreis                 |  
+---------+----+---------------------------+  
|       1 |  5 | Landkreis Merzig-Wadern   |  
|       2 |  2 | Landkreis Neunkirchen     |  
|       3 |  4 | Landkreis Saarlouis       |  
|       4 |  6 | Landkreis St. Wendel      |  
|       5 |  3 | Saar-Pfalz-Kreis          |  
|       6 |  1 | Stadtverband Saarbrücken  |  
+---------+----+---------------------------+  
6 rows in set (0.00 sec)  
  
Getestet mit MySQL 4.1.15-nt. In meinen ids sind zwar keine Lücken, aber das Prinzip dürfte klar sein.  
  
  
Freundliche Grüße  
  
Vinzenz