Mysql – Carregar dados infile ignorar linhas em branco

Embora não haja uma maneira direta de ignorar linhas em branco ao usar o carregamento de dados infile, isso pode ser obtido alterando o arquivo de dados. Se você tiver controle sobre o arquivo de dados, poderá prefixar as linhas que deseja carregar com uma sequência de caracteres. Apenas as linhas que começam com .serão carregadas.

Salutation|Name|Occupation
. Mr.|Yellow|Circus Clown

. Mrs.|Green|Gardener

Então em load data file ...

load data local infile 'data.txt'
into table table_name
fields terminated
by '|'
optionally enclosed
by '"'
lines starting
by '. '
ignore
1 lines(
@salutation,
@name,
@occupation
)

O prefixo pode ser facilmente filtrado com:

awk '/^. / {sub("^. ", ""); print;}'