Not exactly. "At least on row" is not true. Heidi expects EVERY row (with not null no default) to be specified.
Try:
create table test (
id int not null primary key auto_increment,
col1 varchar(10) not null,
col2 varchar(10) not null
);
Create a new row with 'a' in col1.
Created statement:
INSERT INTO test
(col1
) VALUES ('a');
Errormessage:
SQL Fehler (1364): Field 'col2' doesn't have a default value
It's not possible to create the value '' for col2 because Heidi ignores empty rows. But they should not be ignored if null is not allowed;