tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
3
ZUGRIFFE
893
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    piti66 piti66 ist offline Mitglied Brokat
    Registriert seit
    Feb 2005
    Beiträge
    421
    Hey,

    ich versuche meine Tabellen auf doppelte einträge zu konrolieren und diese gegebenenfalls zu löschen, abe irgendwie bekomme ich es nicht hin.

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    
    PHP: [color=#0000cc] 
     $query[color=#006600]=[/color][color=#cc0000]"CREATE TABLE `witztest` ( 
     `id` INT(11) not null auto_increment, 
     `text` TEXT NOT NULL, 
     `kategorie` TEXT NOT NULL, 
     `datum` int(11) NOT NULL default '0', 
     `vote_gesamt` double NOT NULL default '0', 
     `vote_anzahl` double NOT NULL default '0', 
     `durchschnitt` double NOT NULL default '0', 
     `ok` int NOT NULL, 
     `name` text NOT NULL, 
     PRIMARY key(id))"[/color][color=#006600]; 
     [/color][color=#0000cc]$abfrage[/color][color=#006600]=[/color][color=#0000cc]Mysql_query[/color][color=#006600]([/color][color=#0000cc]$query[/color][color=#006600]); 
     [/color][color=#0000cc]$query1[/color][color=#006600]=[/color][color=#cc0000]"insert into witztest select id, distinct text, kategorie, datum, vote_gesamt, vote_anzahl, durchschnitt, ok, name from witz"[/color][color=#006600]; 
     [/color][color=#0000cc]$abfrage1[/color][color=#006600]=[/color][color=#0000cc]Mysql_query[/color][color=#006600]([/color][color=#0000cc]$query1[/color][color=#006600]); 
     if ([/color][color=#0000cc]$abfrage1[/color][color=#006600]) { 
     [/color][color=#0000cc]$query2[/color][color=#006600]=[/color][color=#cc0000]"drop table witz"[/color][color=#006600]; 
     [/color][color=#0000cc]$abfrage2[/color][color=#006600]=[/color][color=#0000cc]Mysql_query[/color][color=#006600]([/color][color=#0000cc]$query2[/color][color=#006600]); 
     [/color][color=#0000cc]$query3[/color][color=#006600]=[/color][color=#cc0000]"RENAME TABLE witztest to witz"[/color][color=#006600]; 
     [/color][color=#0000cc]$abfrage3[/color][color=#006600]=[/color][color=#0000cc]Mysql_query[/color][color=#006600]([/color][color=#0000cc]$query3[/color][color=#006600]); 
     [/color]
    [/color]
    Code :
    1
    
    [color=#000000][/color]

    so passiert beim insert select nichts, wenn ich aber die id nach hinten verlege funktioniert es zwar, aber die Werte werden nicht in der richtigen Rheinfolge abgespeichert. Also bei id steht dann der text drin und so.

    mfg

    sebastian
     

  2. #2
    Avatar von exed
    exed exed ist offline Mitglied Silber
    Registriert seit
    Feb 2005
    Ort
    München
    Beiträge
    81
    Hi

    würde es so in etwa lösen:


    Weiß nicht wie du deine Abfragen machst, schrei deshalb nur das wichtigste:
    PHP-Code:
    //Deine Abfrage:
    $query=("SELECT id, distinct text, kategorie, datum, vote_gesamt, vote_anzahl, durchschnitt, ok, name FROM witz group by text");
    //Ergebnisse in einer While-Schleife durchlaufen:
    while () {
     
    $query2=("INSERT INTO witztest id, distinct text, kategorie, datum, vote_gesamt, vote_anzahl, durchschnitt, ok, name");
     
    }
     


    Viel Glück

    Gruß
    Max
     

  3. #3
    piti66 piti66 ist offline Mitglied Brokat
    Registriert seit
    Feb 2005
    Beiträge
    421
    Habs mal so probiert:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    
     include("include/connect/textconnect.php");
     $query="CREATE TABLE `witztest` (
     `id` INT(11) not null auto_increment,
     `text` TEXT NOT NULL,
     `kategorie` TEXT NOT NULL,
     `datum` int(11) NOT NULL default '0',
     `vote_gesamt` double NOT NULL default '0',
     `vote_anzahl` double NOT NULL default '0',
     `durchschnitt` double NOT NULL default '0',
     `ok` int NOT NULL,
     `name` text NOT NULL,
     PRIMARY key(id))";
     $abfrage=Mysql_query($query);
     $query1=("SELECT id, distinct text, kategorie, datum, vote_gesamt, vote_anzahl, durchschnitt, ok, name FROM witz group by text");
     $abfrage1=Mysql_query($query1);
     while ($row=mysql_fetch_object($abfrage1)) {
     $query2=("INSERT INTO witztest id, distinct text, kategorie, datum, vote_gesamt, vote_anzahl, durchschnitt, ok, name");
     $abfrage2=Mysql_query($query2);
     }

    kommt folgender Fehler:


    Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in C:\xampp\xampp\htdocs\neusinnlos\test.php on line 17

    mfg
     

  4. #4
    piti66 piti66 ist offline Mitglied Brokat
    Registriert seit
    Feb 2005
    Beiträge
    421
    Danke habs hinbekommen.

    mfg

    sebastian
     

Ähnliche Themen

  1. MySQL: Doppelte Einträge löschen
    Von maga147 im Forum Relationale Datenbanksysteme
    Antworten: 8
    Letzter Beitrag: 29.02.08, 17:32
  2. doppelte Einträge löschen
    Von piti66 im Forum Relationale Datenbanksysteme
    Antworten: 2
    Letzter Beitrag: 29.12.05, 11:43
  3. doppelte Einträge löschen
    Von piti66 im Forum PHP
    Antworten: 1
    Letzter Beitrag: 29.12.05, 11:18
  4. Doppelte Einträge im ListView löschen
    Von olek im Forum Visual Basic 6.0
    Antworten: 6
    Letzter Beitrag: 20.02.05, 22:15
  5. doppelte einträge in db löschen
    Von starter/or_not im Forum Relationale Datenbanksysteme
    Antworten: 1
    Letzter Beitrag: 30.12.01, 14:29