Tal como pones la estructura de la tabla, a mi me marca el error tanto si lo hago directamente o através de controles. La definición de la tabla tendría que ser:
Código SQL
[-]
Create table `Articulos`(
`CODIGO` varchar(40),
`ARTICULO` varchar(60),
`COLOR` varchar(30) NOT NULL default '',
primary key (`CODIGO`)
) type=InnoDB;
Ahora bien, cuando lo hago así, observo lo mismo que tú. He estado revisando y me parece que es un error de ZEOS, ya que si uso los componentes
MyDac no me genera ningún error. Creo que el problema está en que ZEOS no lee adecuadamente el valor por defecto.
Lo puedes solucionar asignando manualmente ese valor en el evento OnNewRecord del ZQuery o ZTable que uses.
// Saludos