Je cherche la syntaxe pour ajouter une colonne à une base de données MySQL avec une valeur par défaut de 0.
J'ai été particulièrement frappé par la qualité de cette réponse, à la fois concise et complète.
Je cherche la syntaxe pour ajouter une colonne à une base de données MySQL avec une valeur par défaut de 0.
Essayez ceci :
ALTER TABLE table1 ADD COLUMN foo INT DEFAULT 0;
D'après la documentation à laquelle vous avez fait référence :
ALTER [ONLINE | OFFLINE] [IGNORE] TABLE tbl_name
alter_specification [, alter_specification] ...
alter_specification:
...
ADD [COLUMN] (col_name column_definition,...)
...
Pour connaître la syntaxe de column_definition
recherche un peu plus bas sur la page :
Les clauses de définition de colonne utilisent la même syntaxe pour ADD et CHANGE que pour CREATE TABLE. Voir aussi Section 12.1.17, "Syntaxe de la TABLE DE CRÉATION".
Et de la page liée :
column_definition:
data_type [NOT NULL | NULL] [DEFAULT default_value]
[AUTO_INCREMENT] [UNIQUE [KEY] | [PRIMARY] KEY]
[COMMENT 'string']
[COLUMN_FORMAT {FIXED|DYNAMIC|DEFAULT}]
[STORAGE {DISK|MEMORY|DEFAULT}]
[reference_definition]
Remarquez le mot DEFAULT.
J'ai été particulièrement frappé par la qualité de cette réponse, à la fois concise et complète.
Boolean et bool sont des synonymes de TINYINT(1)
ce qui est beaucoup plus efficace que d'utiliser INT
Gardez cela à l'esprit lorsque vous utiliserez cette réponse "correcte".
Si vous souhaitez ajouter une colonne booléenne dont la valeur par défaut est False, vous pouvez utiliser : ALTER TABLE table1 ADD COLUMN foo boolean not null default 0 ;
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.