Seite 1 von 1

Fehler mit 'phpbb_groups' tabelle nach Update

Verfasst: 16.02.2004 11:23
von Ameise
Hallo allerseits!

ich habe vor einigen Tagen mein Board von (IMHO) v. 2.0.1 auf version 2.0.6 gebracht. Das Board lief soweit einwandfrei, aber wenn sich ein neuer User registriert ereilt ihn folgende Fehlermeldung:
Could not insert data into groups table
DEBUG MODE
SQL Error : 1062 Duplicate entry '0' for key 1
INSERT INTO phpbb_groups (group_name, group_description, group_single_user, group_moderator) VALUES ('', 'Personal User', 1, 0)
Line : 542
File : /home/www/web217/html/forum/includes/usercp_register.php
Als ich meinen Testuser-account löschen wollte, gesellte sich folgende Meldung dazu:
Could not delete group for this user
DEBUG MODE
SQL Error : 1064 You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 2
DELETE FROM phpbb_groups WHERE group_id =
Line : 155
File : /home/www/web217/html/forum/admin/admin_users.php
In einem englischsprachigen Board hieß es dazu, daß man die Tabelle phpbb_groups so verändern sollte, daß dort die group-id als Auto-increment angegeben ist. Genau das klappt aber bei mir nicht, SQL meldet dann:
SQL-Befehl :
ALTER TABLE `usr_web217_1`.`phpbb_groups` CHANGE `group_id` `group_id` MEDIUMINT(8) DEFAULT '0' NOT NULL AUTO_INCREMENT
MySQL meldet:
Duplicate entry '4' for key 1
wobei es keinen doppelten Eintrag für Gruppennummer '4' gibt (wie auch? ist ja der Primärschlüssel!)
(meine Group-IDs gehen bei 0 los und enden irgendwo bei 130)

Wie kann ich die DB jetzt so umstellen, daß wieder alles funktioniert?
Und wie finde ich heraus, welche Zeile ich wegen meines Testusers noch löschen muss?

Verfasst: 16.02.2004 13:55
von Dave
Schon mal den DB Maintenance Mod versucht?

Verfasst: 16.02.2004 17:32
von Ameise
Inzwischen ja, Danke!

Allerdings hat der Mod keinen Fehler gefunden, es schien zeitweilig wieder okay zu sein (ich hatte drei fehlerhafte User gelöscht), aber das Problem ist definitiv noch nicht behoben: die neuen testuser ide ich angelegt habe, sind wieder fehlerhaft... :-()

Was kann ich tun?

Verfasst: 17.02.2004 01:04
von PhilippK
Im DB Maintenance auch mal den Reset der automatischen Zähler probiert?

Exportiere mit phpMyAdmin die Struktur der Tabelle phpbb_groups. Du erhälst dann einen SQL-Befehl, der alle wesentlichen Tabellendaten beinhaltet. Poste den doch mal bitte.

Gruß, Philipp

Verfasst: 19.02.2004 15:04
von Ameise
inzwischen habe ich an der Groups-tabelle selbst hand angelegt, und es scheint auch soweit zu funktionieren... Bin mir nur nicht sicher, wie lange - ich habe für alle bestehenden User einen Group-Eintrag mit gleicher Nummer angelegt, glaube aber, daß die Nummern irgendwie leicht verschoben sind, wenn sich neue User anmelden :-?

Hier ist der Auszug aus der von mir editierten tabelle:

CREATE TABLE phpbb_groups (
group_id mediumint(8) NOT NULL auto_increment,
group_type tinyint(4) NOT NULL default '1',
group_name varchar(40) NOT NULL default '',
group_description varchar(255) NOT NULL default '',
group_moderator mediumint(8) NOT NULL default '0',
group_single_user tinyint(1) NOT NULL default '1',
PRIMARY KEY (group_id),
KEY group_single_user (group_single_user)
) TYPE=MyISAM;