Dada a seguinte tabela:
CREATE TABLE Test (
id int(10) unsigned NOT NULL PRIMARY KEY,
value int(10) unsigned NOT NULL
) ENGINE=InnoDB;
Se eu inserir um valor apenas com o id
campo definido:
INSERT INTO Test (id) VALUES (1);
No meu servidor de desenvolvimento, recebo um aviso:
Aviso: #1366 Valor inteiro incorreto: '' para a coluna 'valor' na linha 1
No meu servidor de produção, recebo um erro:
ERRO 1364 (HY000): O campo 'valor' não tem um valor padrão
O que devo configurar no meu servidor de desenvolvimento para que ele se comporte como meu servidor de produção?
Dê uma olhada em http://dev.mysql.com/doc/refman/5.5/en/sql-mode.html
Você pode definir isso para sua sessão atual ou em sua configuração mysql
my.cnf (sistemas operacionais Unix) ou my.ini (Windows)
Em seu servidor de produção, use a seguinte consulta para determinar o modo atual:
No seu servidor de desenvolvimento, você pode configurá-lo para a sessão atual com