pragmaMx Support Forum

pragmaMx => Coder und Bastlerecke => Thema gestartet von: comedi in 27 Dezember 2011, 20:37:08

Titel: [gelöst] UPDATE von Feldinhalten und Spalten
Beitrag von: comedi in 27 Dezember 2011, 20:37:08
Hoi zusammen,  :)

ich möchte über das Setup eines Modul die Eigenschaften(Typ) einer Spalte ändern und bei einer anderen Spalte die Eigenschaft(Typ) und den Wert(Standart) ändern.

So richtig kriege ich das aber nicht hin. Habe es jetzt so gelöst, bei dem zweiten Fall:
if (isset($tables["${prefix}_XXXXX"])) {
    $tf = setupGetTableFields("${prefix}_XXXXX");
    //if (!isset($tf['xxxxx'])){
    {
    $sqlquery[] = "ALTER TABLE `${prefix}_XXXXX` DROP `xxxxx`";
    }
    if (!isset($tf['xxxxx']))
    {
    $sqlquery[] = "ALTER TABLE `${prefix}_XXXXX` ADD `xxxxx` varchar(100) not null default 'abcdefghijklm' ";
    }
}


Grundsätzlich funzt es ja, aber immer wenn dann das Setup aufgerufen wird, wird auch dieser Schritt gemacht. Nur ist das ja nicht Sinn und Zweck.
Hat jemand einen Tip wie ich das korrekt ausführen kann?

Titel: Re:UPDATE von Feldinhalten und Spalten
Beitrag von: comedi in 27 Dezember 2011, 23:42:48
Moin,  :)

so habe eine Lösung:

if (isset($tables["${prefix}_XXXXXXX"])) {
    $tf = setupGetTableFields("${prefix}_XXXXXXX");
    if ($tf['xyz']['Type'] != 'varchar(100)') $sqlquery[] = "ALTER TABLE `${prefix}_XXXXXXX` CHANGE `xyz` `xyz` VARCHAR( 100 ) NOT NULL default '' ;";
    if ($tf['xyz2']['Type'] != 'varchar(100)') $sqlquery[] = "ALTER TABLE `${prefix}_XXXXXXX` CHANGE `xyz2` `xyz2` VARCHAR( 100 ) NOT NULL default 'meine Werte' ;";
}
Titel: Re:[gelöst] UPDATE von Feldinhalten und Spalten
Beitrag von: Andi in 27 Dezember 2011, 23:56:55
Genau  :thumbup: