Ergebnis 1 bis 6 von 6

Thema: Doppelte Spalten bei Add Ignorieren

  1. #1
    Administrator Avatar von Lokutos
    Registriert seit
    29.03.2008
    Beiträge
    3.147

    Doppelte Spalten bei Add Ignorieren

    Da meine Addons zum Teil auf den selben spalten beruhen wie andere
    aber nicht standart im vms sind würde ich diese gerne immer prüfen ob sie vorhanden sind un notfalls anlegen.

    gibt es eine möglichkeit
    sozusagen
    PHP-Code:
    ALTER TABLE vms_gebuchte_werbung ADD  beschreibung varchar(50NOT NULL
    z.b. wie bei einer Tabelle hinzufügen mit If Not EXISTS zu erweitern

    z.b. ALTER TABLE vms_gebuchte_werbung ADD IF NOT EXIST beschreibung varchar(50) NOT NULL;

    MFg Lokutos
    SwissNetWorX - VMS Hosting / V-Server / Cloud-Server / Hosting

  2. #2
    Erfahrener Benutzer Avatar von Gremlin
    Registriert seit
    05.07.2006
    Beiträge
    5.206
    Du könntest das vorher checken in einem extra query oder ganz einfach mit:

    ALTER IGNORE TABLE....

    Oder einfach immer den Query absenden wirft halt nen mysql_error aus, den du aber ja nicht ausgeben musst.
    Diskutiere nie mit Idioten - sie holen Dich auf ihr Niveau und schlagen Dich dort mit Erfahrung!



  3. #3
    Administrator Avatar von Lokutos
    Registriert seit
    29.03.2008
    Beiträge
    3.147
    Das das ding.
    ist eine .sql datei.
    sprich wird nicht von einem Script ausgeführt.
    SwissNetWorX - VMS Hosting / V-Server / Cloud-Server / Hosting

  4. #4
    Erfahrener Benutzer Avatar von Gremlin
    Registriert seit
    05.07.2006
    Beiträge
    5.206
    Und was spricht dagegen die SQL zu bearbeiten? und das IGNORE zu adden?
    Diskutiere nie mit Idioten - sie holen Dich auf ihr Niveau und schlagen Dich dort mit Erfahrung!



  5. #5
    Administrator Avatar von Lokutos
    Registriert seit
    29.03.2008
    Beiträge
    3.147
    INSERT IGNORE INTO funktioniert
    ALTER IGNORE TABLE funktioniert nicht

    PHP-Code:
    ALTER IGNORE TABLE `vms_userdatenADD `sutosurfsortENUM'aufendhalt''verdienst''reload''zeitverdienst' NOT NULL DEFAULT 'verdienst',
    ADD `sutosurfsortaENUM'asc''desc' NOT NULL DEFAULT 'desc';

    MySQL meldetDokumentation
    #1060 - Duplicate column name 'sutosurfsort' 
    SwissNetWorX - VMS Hosting / V-Server / Cloud-Server / Hosting

  6. #6
    Erfahrener Benutzer Avatar von jpwfour
    Registriert seit
    06.02.2008
    Beiträge
    3.717
    Was spricht denn gegen ein PHP Installation Skript? Ist definitiv kundenfreundlicher, und du schreibst, es geht um deine Addons, daher kannst du sowas wohl mitliefern?

    Eine gute/schnelle/versionsübergreifende Methode gibt es afaik nicht (wie dir im Klammforum: http://www.klamm.de/forum/f28/ignore...ng-361761.html ja auch schon mitgeteilt wurde ), allerdings ist es natürlich trotzdem möglich

    Code:
    delimiter //
    CREATE PROCEDURE addcol() BEGIN 
    IF NOT EXISTS( 
    SELECT * FROM information_schema.COLUMNS 
    WHERE COLUMN_NAME='c' AND TABLE_NAME='t' 
    ) 
    THEN 
    ALTER TABLE `t` 
    ADD COLUMN `c` int(11) NOT NULL default 0; 
    END IF; 
    END; 
    //
    delimiter ;
    CALL addcol();
    DROP PROCEDURE addcol;
    Das bekommt man aber denke ich auch kaum in eine .sql Datei, selbst in PHPMyAdmin wirds schwierig (da kann man Begrenzer afaik nur mit einem extra Input unter dem SQL Eingabefeld auswählen).

    In PHPMyAdmin müsste mand as wohl etwa so machen:

    Code:
    DROP PROCEDURE IF EXISTS addcol//
    CREATE PROCEDURE addcol() BEGIN 
    IF NOT EXISTS( 
    SELECT * FROM information_schema.COLUMNS 
    WHERE COLUMN_NAME='c' AND TABLE_NAME='t' 
    ) 
    THEN 
    ALTER TABLE `t` 
    ADD COLUMN `c` int(11) NOT NULL default 0; 
    END IF; 
    END; 
    //
    CALL addcol()//
    DROP PROCEDURE addcol//
    Und als Begrenzer dann // eingeben.
    Kill one man, and you are a murderer.
    Kill millions of men, and you are a conqueror.
    Kill them all, and you are a god.
    - Jean Rostand, Thoughts of a Biologist (1939)

Ähnliche Themen

  1. [SQL] Spalten inhalt Splitten
    Von wowfreak im Forum [HD] Programmieren
    Antworten: 2
    Letzter Beitrag: 12.04.2012, 20:06
  2. User in 2 Spalten mischen
    Von auron2008 im Forum [HD] Programmieren
    Antworten: 2
    Letzter Beitrag: 30.10.2010, 10:27
  3. [HTML/CSS/JS] [CSS] Aus 2 Spalten 3 machen
    Von Gremlin im Forum [HD] Programmieren
    Antworten: 8
    Letzter Beitrag: 18.05.2009, 23:58
  4. 3 Spalten Layout
    Von Xenon im Forum Talk, talk, talk...
    Antworten: 6
    Letzter Beitrag: 03.07.2008, 18:17
  5. 3 Spalten layout
    Von Xenon im Forum [HD] Grafik, Server & Sonstiges
    Antworten: 5
    Letzter Beitrag: 16.03.2008, 14:44

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •