YourWBB


yourWBB » WoltLab Burning Board Generation 2 * » Alles von und für das WBB 2.3.x » [WBB 2.3.x] Allg. Fragen und Probleme » Leere Threads löschen » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag 1.448 Views | | Thema zu Favoriten hinzufügen

Neues Thema erstellen Antwort erstellen

Dieses Thema wurde als erledigt markiert. Thread erledigt

Zum Ende der Seite springen Leere Threads löschen
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Cruiser Cruiser ist männlich
Mitglied


Dabei seit: 14.08.07
Beiträge: 98
Herkunft: Möhnesee
Forenversion: 2.3

 Leere Threads löschen Antworten Zitieren Editieren Melden       UP

Ich bin dabei, in meinem Forum etwas "aufzuräumen".

Dazu habe ich Posts gelöscht, die eine bestimmte Zeichenkette enthalten.

SQL-Befehl:
code:
1:
DELETE FROM `bb1_posts` WHERE `message` like "%zeichenkette%";

Nun sind viele Threads leer.

Mit welchem SQL-Befehl kann ich die leeren Threads löschen?

Oder geht das über das ACP?
26.03.09 19:06 Cruiser ist offline E-Mail WWW Finden Als Freund hinzufügen Füge Cruiser in deine Kontaktliste ein
Dizzy.w3 Dizzy.w3 ist männlich
Brain Damage


images/avatars/avatar-5617.jpg

Dabei seit: 18.07.07
Beiträge: 1.431
Herkunft: Österreich
Forenversion: 3.0

Antworten Zitieren Editieren Melden       UP

Hi,

der Query ist ganz gaga. Die »%« sind Wildcards, bedeutet, du löscht alle Beiträge, die das Wort "zeichenkette" enthalten, zudem nutzt SQL die einfachen Anführungszeichen für Strings.

Was möchtest du jetzt löschen? - Leere Beiträge wirds nicht geben. Meinst du Themen ohne Antwort?

__________________
Gruß Dizzy

the rest is silence

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Dizzy.w3: 26.03.09 19:16.

26.03.09 19:15 Dizzy.w3 ist offline E-Mail Finden Als Freund hinzufügen Füge Dizzy.w3 in deine Kontaktliste ein MSN Passport-Profil von Dizzy.w3 anzeigen
Cruiser Cruiser ist männlich
Mitglied


Dabei seit: 14.08.07
Beiträge: 98
Herkunft: Möhnesee
Forenversion: 2.3

Themenstarter Thema begonnen von Cruiser
Antworten Zitieren Editieren Melden       UP

Zitat:
Original von Dizzy.w3
Hi,

der Query ist ganz gaga. Die »%« sind Wildcards, bedeutet, du löscht alle Beiträge, die das Wort "zeichenkette" enthalten....

Genau DAS hatte ich auch beabsichtigt. Also Gaga ist das wohl nicht....

Zitat:
Was möchtest du jetzt löschen? - Leere Beiträge wirds nicht geben. Meinst du Themen ohne Antwort?

Ich möchte nun LEERE THEMEN löschen.
Also Themen ohne einen Beitrag.

Und JA, nach meiner Löschaktion gibt es jetzt etliche davon.
26.03.09 19:22 Cruiser ist offline E-Mail WWW Finden Als Freund hinzufügen Füge Cruiser in deine Kontaktliste ein
Finisher Finisher ist männlich
Mitglied


images/avatars/avatar-5530.jpg

Dabei seit: 16.09.05
Beiträge: 46
Herkunft: Gilching (Bayern)
Forenversion: 2.3

Antworten Zitieren Editieren Melden       UP

Also zuerst mal würde ich dir das Einspielen eines Datenbank-Backups empfehlen.

Und danach würde ich das ganze an deiner Stelle per Script richtig machen.

1.) Abfragen der Thread-ID der Tabelle posts wo die Zeichenkette drinn ist
2.) Dann Abfragen, ob noch mehr posts diese Thread-ID haben.
2a) Sind noch mehr Postings mit dieser threadid vorhanden, dann posting löschen
2b) Sind keine weiteren Postings mit dieser threadid vorhanden, dann posting UND threadid (in Tabelle threads) löschen
3) Anschließend kannst du dich darüber freuen, das zum einen viele Threads weg sind, und zum anderen die die übrig sind zum Teil unlesbar sind (weil zwischendrin Postings fehlen die vielleicht den Zusammenhang zusammenbrechen lassen)

Ach ja - und Anzeigen aktualisieren (wg. Benutzerbeiträge etc. etc.) solltest du auch machen.

P.S. Sorry für meinen Schreibstil - aber ich persönlich finde das so ziemlich die blödsinnigste Idee, was jemand umsetzen wollte seit langem. Dann muss man sich halt mal die Arbeit machen und wirklich SELEKTIV löschen. Dafür ist man Admin und hat Mods






Edit:
2. Idee:
Du machst dir einen Selekt
Für jede Threadid in der Tabelle threads gucken, ob es diese Threadid auch in der Tabelle posts gibt. Wenn nicht, dann löschen.
Dann sind "leere Posts" auch weg

__________________
Administrator der www.skodafreunde-muenchen.de

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Finisher: 26.03.09 20:07.

26.03.09 20:04 Finisher ist offline E-Mail WWW Finden Als Freund hinzufügen
Cruiser Cruiser ist männlich
Mitglied


Dabei seit: 14.08.07
Beiträge: 98
Herkunft: Möhnesee
Forenversion: 2.3

Themenstarter Thema begonnen von Cruiser
Antworten Zitieren Editieren Melden       UP

Zitat:
Original von Finisher
P.S. Sorry für meinen Schreibstil - aber ich persönlich finde das so ziemlich die blödsinnigste Idee, was jemand umsetzen wollte seit langem.

Ich weiß beim besten Willen nicht, warum hier so oft Aktionen von anderen kritisiert werden. verwirrt
Du weißt doch gar nicht, worum es geht.
Eine kommentarlose Antwort reicht völlig aus.
Wenn jemand helfen kann ist gut, wenn nicht habe ich Pech gehabt. Freude

Aber wenn es hilft:
Ich räume den Rezept-Bereich auf in dem alle Themen gelöscht werden sollen, die als Quelle einen bestimmten Anbieter haben.
Also z. B. alle Rezepte, bei denen als Quelle "Chefkoch" angegeben ist.


Zitat:
Dann muss man sich halt mal die Arbeit machen und wirklich SELEKTIV löschen. Dafür ist man Admin und hat Mods

Darauf wird es hinauslaufen.
Haben die Mods endlich mal was zu tun. großes Grinsen
26.03.09 20:29 Cruiser ist offline E-Mail WWW Finden Als Freund hinzufügen Füge Cruiser in deine Kontaktliste ein
Dizzy.w3 Dizzy.w3 ist männlich
Brain Damage


images/avatars/avatar-5617.jpg

Dabei seit: 18.07.07
Beiträge: 1.431
Herkunft: Österreich
Forenversion: 3.0

Antworten Zitieren Editieren Melden       UP

Bissl aggro, hm?

Danke an supersucker und daboss @ unixboard.de

code:
1:
DELETE FROM bb1_threads WHERE threadid NOT IN (SELECT DISTINCT threadid FROM bb1_posts)


Löscht alle Threads, die keine Beiträge mehr haben. - Ist aber ungetestet.

__________________
Gruß Dizzy

the rest is silence

26.03.09 21:36 Dizzy.w3 ist offline E-Mail Finden Als Freund hinzufügen Füge Dizzy.w3 in deine Kontaktliste ein MSN Passport-Profil von Dizzy.w3 anzeigen
Cruiser Cruiser ist männlich
Mitglied


Dabei seit: 14.08.07
Beiträge: 98
Herkunft: Möhnesee
Forenversion: 2.3

Themenstarter Thema begonnen von Cruiser
Antworten Zitieren Editieren Melden       UP

Bissl aggro, hm?

Nööööö. Ich finde es nur blöd, dass sich der Eine oder Andere die Kommentare nicht verkneifen kann. smile



Danke an supersucker und daboss @ unixboard.de

code:
1:
DELETE FROM bb1_threads WHERE threadid NOT IN (SELECT DISTINCT threadid FROM bb1_posts)


Löscht alle Threads, die keine Beiträge mehr haben. - Ist aber ungetestet.

Vielen Dank, versuche ich gerne mal.
Ich probiere das immer vorab an meinem Test-Forum.
27.03.09 00:28 Cruiser ist offline E-Mail WWW Finden Als Freund hinzufügen Füge Cruiser in deine Kontaktliste ein
Dizzy.w3 Dizzy.w3 ist männlich
Brain Damage


images/avatars/avatar-5617.jpg

Dabei seit: 18.07.07
Beiträge: 1.431
Herkunft: Österreich
Forenversion: 3.0

Antworten Zitieren Editieren Melden       UP

Ging's?

__________________
Gruß Dizzy

the rest is silence

29.03.09 19:47 Dizzy.w3 ist offline E-Mail Finden Als Freund hinzufügen Füge Dizzy.w3 in deine Kontaktliste ein MSN Passport-Profil von Dizzy.w3 anzeigen
Baumstruktur | Brettstruktur
Gehe zu:

Neues Thema erstellen Antwort erstellen

yourWBB » WoltLab Burning Board Generation 2 * » Alles von und für das WBB 2.3.x » [WBB 2.3.x] Allg. Fragen und Probleme » Leere Threads löschen