Merci de ta réponse, mais je comprend ne la comprend pas bien...
Je fais l'ajout de cette colonne dans une table xxx et pour cela
j'utilise un fichier sql/xxx.sql.
Pourrais tu m'espliquer en détail comment faire la vérification ?
Merci d'avance.
Gilles Lengy
Artaban Communication
33 (0)1 40 09 18 18
www.artaban.fr
spip.artaban.fr
Adhérent de l'April (www.april.org)
Le 24/05/2016 à 15:19, Laurent Destailleur (aka Eldy) a écrit :
Si tu as besoin de rajouter une colonne contente toi de faire un
ALTER TABLE xxx ADD COLUMN yyy...
Avec éventuellement le param du $db->query à 1 si cela se fait avec du
code dolibarr et ignore l'erreur en cas d'erreur de type duplicate
column ou column alreayd exists.
Le 24 mai 2016 à 10:22, Gilles Lengy <[email protected]
<mailto:[email protected]>> a écrit :
Bonjour,
Nous avons trouvés quelques petits bugs dans nos plugins et nous
les corrigeons.
Pour l'un d'entre eux, j'aurais besoin de rajouter une colonne
dans une table.
Voici le code qui marche lorsque je le fais depuis phpmyadmin :
DELIMITER $$
DROP PROCEDURE IF EXISTS upgrade_database_1_0_to_1_1 $$
CREATE PROCEDURE upgrade_database_1_0_to_1_1()
BEGIN
-- add a column safely >
http://stackoverflow.com/questions/972922/add-column-to-mysql-table-if-it-does-not-exist
IF NOT EXISTS( (SELECT * FROM information_schema.COLUMNS WHERE
TABLE_SCHEMA=DATABASE()
AND COLUMN_NAME='active' AND
TABLE_NAME='llx_support_parution_version_parution') ) THEN
ALTER TABLE llx_support_parution_version_parution ADD active
TINYINT(4) NOT NULL DEFAULT 1;
END IF;
END $$
CALL upgrade_database_1_0_to_1_1() $$
DELIMITER ;
Par contre, ce code n'a pas l'air de marcher lorsque je désactive
puis réactive le module...
Voici le code du fichier sql :
CREATE TABLE IF NOT EXISTS llx_support_parution_version_parution
(
fk_parution INT(11) NOT NULL,
fk_support_parution_version_support INT(11) NOT NULL
)ENGINE = InnoDB
DELIMITER $$
DROP PROCEDURE IF EXISTS upgrade_database_1_0_to_1_1 $$
CREATE PROCEDURE upgrade_database_1_0_to_1_1()
BEGIN
-- add a column safely >
http://stackoverflow.com/questions/972922/add-column-to-mysql-table-if-it-does-not-exist
IF NOT EXISTS( (SELECT * FROM information_schema.COLUMNS WHERE
TABLE_SCHEMA=DATABASE()
AND COLUMN_NAME='active' AND
TABLE_NAME='llx_support_parution_version_parution') ) THEN
ALTER TABLE llx_support_parution_version_parution ADD active
TINYINT(4) NOT NULL DEFAULT 1;
END IF;
END $$
CALL upgrade_database_1_0_to_1_1() $$
DELIMITER ;
Est ce que quelqu'un aurait une piste ?
Merci d'avance.
Bien à vous.
--
Gilles Lengy
Artaban Communication
33 (0)1 40 09 18 18
www.artaban.fr <http://www.artaban.fr>
spip.artaban.fr <http://spip.artaban.fr>
Adhérent de l'April (www.april.org <http://www.april.org>)
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient>
Garanti sans virus. www.avast.com
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient>
_______________________________________________
Dolibarr-dev mailing list
[email protected] <mailto:[email protected]>
https://lists.nongnu.org/mailman/listinfo/dolibarr-dev
--
EMail: [email protected] <mailto:[email protected]>
Web: http://www.destailleur.fr
------------------------------------------------------------------------------------
Google+: https://plus.google.com/+LaurentDestailleur-Open-Source-Expert/
Facebook: https://www.facebook.com/Destailleur.Laurent
Twitter: http://www.twitter.com/eldy10
------------------------------------------------------------------------------------
* Dolibarr (Project leader): http://www.dolibarr.org (make a donation
for Dolibarr project via Paypal: [email protected]
<mailto:[email protected]>)
* AWStats (Author) : http://awstats.sourceforge.net (make a donation
for AWStats project via Paypal: [email protected]
<mailto:[email protected]>)
* AWBot (Author) : http://awbot.sourceforge.net
* CVSChangeLogBuilder (Author) : http://cvschangelogb.sourceforge.net
_______________________________________________
Dolibarr-dev mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/dolibarr-dev
---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel
antivirus Avast.
https://www.avast.com/antivirus
_______________________________________________
Dolibarr-dev mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/dolibarr-dev