Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
(Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI...

Primärschlüssel (MySql) -> Problem

Diskussion: Primärschlüssel (MySql) -> Problem im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Mein Problem ist folgendes: Ich habe in einer Tabelle einen Wert als Primärschlüssel festgelegt, der Wert heißt Index. Nun ...

Antwort
Alt 26.12.02, 21:54   #1 (permalink)
 
Registriert seit: 27.01.02
JoBbE Leistung: Facit NTK
Likes: 0
Standard Primärschlüssel (MySql) -> Problem

Anzeige

Mein Problem ist folgendes: Ich habe in einer Tabelle einen Wert als Primärschlüssel festgelegt, der Wert heißt Index. Nun will ich aus dieser Tabelle für eine Seite jeweils den *ersten* Eintrag auslesen, das Problem ist aber: die Tabelle kann beliebig editiert werden, sodass u.U. der Eintrag mit dem Index 0 bzw 1 (jedenfalls der erste) auch gelöscht werden kann. Das hat allerdings zur Folge, dass es keinen Eintrag mit dem Index 1 mehr gibt, die Seite findet nichts, keine Ausgabe, Jobbe traurig.

Was ich jetzt praktisch fände wäre ne Option, dass die Einträge einer Tabelle automatisch 'zusammengeschoben' werden sprich angenommen es existieren 3 Einträge A, B, C wobei A index 1 hat, B 2, C 3, und jezt A gelöscht wird, dann soll B den Index 1 bekommen und C 2.

Ich hoffe das war jetzt nicht zu verwirrt Btw: Wenn dass schonmal ebsprochen wurde tuts mir leid, habe mit der Suchfunktion nichts passendes gefunden leider. Mit google auch nicht. Habe wohl falsche gesucht.

JoBbE ist offline   Mit Zitat antworten
Alt 27.12.02, 12:23   #2 (permalink)
Member of Honour
 
Registriert seit: 20.10.01
boppy Leistung: Facit NTK
boppy eine Nachricht über ICQ schicken
Likes: 0
Standard

also das neu sortieren solltest du dir aus dem kopf schlagen. das gibt sicherlich später probleme... Aber wenn du jeweils den ersten haben willst ist das doch einfach!:

$output = mysql_db_query(db,"SELECT * FROM table WHERE bedingung = 'erfuellt' ORDER BY index LIMIT 1");

So hast du den ersten beitrag. ob er nun den index 1, 2 oder 78234845 hat spielt keine rolle. Grund ist, dass die struktur geordnet ist (ORDER BY) und das LIMIT 1 besagt, dass nur ein datensatz ausgewählt wird...

ich hoffe geholfen zu haben
boppy ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 27.12.02, 13:16   #3 (permalink)
Themenstarter
 
Registriert seit: 27.01.02
JoBbE Leistung: Facit NTK
Likes: 0
Standard

oh danke böppchen
das wirds tun denke ich
JoBbE ist offline   Mit Zitat antworten
Alt 27.12.02, 20:46   #4 (permalink)
Moderator
 
Registriert seit: 17.10.01
soox Leistung: Facit NTK
Likes: 0
Standard

mal ne kleine anmerkung: also so wie ich das sehe wäre dann dein index feld überflüssig....
soox ist offline   Mit Zitat antworten
Alt 28.12.02, 21:20   #5 (permalink)
Themenstarter
 
Registriert seit: 27.01.02
JoBbE Leistung: Facit NTK
Likes: 0
Standard

nicht ganz weil auch noch die möglichkeit bestehen soll, bezielt einträge anzuzeigen :]
JoBbE ist offline   Mit Zitat antworten
Alt 29.12.02, 06:03   #6 (permalink)
Moderator
 
Registriert seit: 17.10.01
soox Leistung: Facit NTK
Likes: 0
Standard

Zitat:
Original von JoBbE
nicht ganz weil auch noch die möglichkeit bestehen soll, bezielt einträge anzuzeigen :]
aber wenn du diese 'ids' der reihe nach nummeriert haben willst (ohne lücke) müstest dannst du dann so oder so nicht mehr eindeutig sagen welchen du willst
wenn du also den 2ten datensatz haben wilslt dann kannst du das auch mit "SELECT * FROM `user` LIMIT 1, 1" machen....den 4ten so: "SELECT * FROM `user` LIMIT 3, 1", usw.....
soox ist offline   Mit Zitat antworten
Alt 29.12.02, 11:40   #7 (permalink)
Themenstarter
 
Registriert seit: 27.01.02
JoBbE Leistung: Facit NTK
Likes: 0
Standard

hm das ist sicherlich richtig.
hmm
verdammt, jetzt muss ich die blöde seite wieder umschreiben
JoBbE ist offline   Mit Zitat antworten
Alt 29.12.02, 14:35   #8 (permalink)
Moderator
 
Registriert seit: 17.10.01
soox Leistung: Facit NTK
Likes: 0
Standard

musst du nicht....aber wenn dann irgendwann die frage kommt "wie kann ich meine seite optimieren" dann ist es an der zeit dies zu ändern....
soox ist offline   Mit Zitat antworten
Alt 29.12.02, 15:47   #9 (permalink)
Themenstarter
 
Registriert seit: 27.01.02
JoBbE Leistung: Facit NTK
Likes: 0
Standard

hm optimieren.. is nur ne kleine seit für mein vadder, da wird nix optimiert
JoBbE ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Web, Network & Multimedia Palace » (Web-) Design und webbasierte Sprachen » Primärschlüssel (MySql) -> Problem
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
mySQL && PHP Problem bikmaek (Web-) Design und webbasierte Sprachen 2 07.06.07 07:46
Mysql Inner join problem weau (Web-) Design und webbasierte Sprachen 4 17.03.07 12:05
MySQL- Abfrage Problem PtB (Web-) Design und webbasierte Sprachen 21 19.11.04 07:41
problem mit mysql matrixII (Web-) Design und webbasierte Sprachen 3 05.09.04 19:07
problem mit php & mySQL passwortabfrage Scrat (Web-) Design und webbasierte Sprachen 2 05.12.02 16:02


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61