aide prestashop PhenixSuite Help
    • Catégories
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes
    • Recherche
    • S'inscrire
    • Se connecter

    SQL : Alter table Add if not exist

    Planifier Épinglé Verrouillé Déplacé Discussion générale
    4 Messages 2 Publieurs 1.5k Vues 2 Watching
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • O Hors-ligne
      okom3pom legacy
      dernière édition par okom3pom

      Bonjour,

      Je sais que cette notion n'existe pas ...

      Mais malgré avoir lu et cherché, je bloque j'ai toujours une erreur dans mes tests.

      J'avoue ne pas comprendre ce qui cloche ou ce que je loupe, je continue de chercher mais au cas ou, si quelqu'un à une piste

      Info :

      Version du serveur : 5.5.55-0ubuntu0.14.04.1 - (Ubuntu)

      Merci

      1 réponse Dernière réponse Répondre Citer 0
      • O Hors-ligne
        okom3pom legacy
        dernière édition par

        Je n'ai pas réussi avec une seule ligne SQL

        J'ai donc utilisé ça :

            $sql = "SHOW COLUMNS FROM ps_vip LIKE 'recall'";
            $res = Db::getInstance()->executeS($sql);
            if (!isset($res[0]['Field'])) {
                $add = "ALTER TABLE `ps_vip` ADD `recall` int(1) NOT NULL default '0';";
                if (!Db::getInstance()->Execute($add)) {
                    $success = false;
                }
            }```
        
        Il doit sûrement exister un meilleure façon mais je ne l'ai pas trouvé.
        1 réponse Dernière réponse Répondre Citer 0
        • doekiaD Hors-ligne
          doekia
          dernière édition par doekia

          Non il n'existe pas d'autre méthode car il n'est pas possible de faire un alter dans une jointure mais...
          Tu peux ADD ta colonne et intercepter l'erreur qui se produira si elle existe déjà
          et il me semble que mariadb admet la syntaxe if not exists
          https://mariadb.com/kb/en/library/alter-table/ à partir de la 10.0.2

          https://store.enter-solutions.com modules, support et assistance.

          Je précise que je n'ai pas fait ni Paco-Rabane, ni Poudlard 2ème langue - je ne suis ni devin, ni magicien.
          Fournissez un maximum d'information dans vos questions, version exacte du coeur et de vos modules, si besoin un peu d'histoire sur votre shop et vos recherches, les modules tiers installés, ...

          Si mon intervention vous a aidé, n'hésitez pas à me remercier: https://ko-fi.com/A153227G

          1 réponse Dernière réponse Répondre Citer 1
          • O Hors-ligne
            okom3pom legacy
            dernière édition par

            Merci pour la réponse
            Ca me rassure car je bloquais complètement.

            1 réponse Dernière réponse Répondre Citer 0
            • Premier message
              Dernier message
            bug
            26 sujets
            1.6
            24 sujets
            front-office
            11 sujets
            1.5
            8 sujets
            1.7
            5 sujets
            système
            4 sujets
            administration
            3 sujets
            hack
            3 sujets
            module
            3 sujets
            performance
            3 sujets
            smtp
            3 sujets
            transporteurs
            3 sujets
            dashboard
            2 sujets
            https
            2 sujets
            paypal
            2 sujets
            promotions
            2 sujets