Oi John,
Isso dependerá da sua regra de negócio.
Se o campo observação pode ser nulo, você não precisará especificar nada quando estiver criando a tabela e não precisará explicitar o campo quando estiver executando um INSERT.
Exemplo:
CREATE TABLE COMPRAS
(
COMPRAID INT(5),
RECEBIDO INT(1),
OBSERVACOES VARCHAR(50)
);
//Insert com a coluna OBSERVACOES explicita:
INSERT INTO COMPRAS (COMPRAID, RECEBIDO,
OBSERVACOES) VALUES (1,1,NULL);
/* Você também pode omitir a coluna OBSERVACOES no seu insert.
Ficará assim: */
// Insert omitindo a coluna OBSERVACOES
INSERT INTO COMPRAS (COMPRAID, RECEBIDO) VALUES (1,1);
Agora se você criar a tabela usando NOT NULL na coluna você será obrigado a preencher o campo com alguma informação:
CREATE TABLE COMPRAS
(
COMPRAID INT(5),
RECEBIDO INT(1),
OBSERVACOES VARCHAR(50) NOT NULL
);
INSERT INTO COMPRAS (COMPRAID, RECEBIDO,
OBSERVACOES) VALUES (1,1,'');
/* Se a coluna OBSERVACOES for NOT NULL, a omissão da coluna OBSERVACOES não é permitida no INSERT*/