Parece que o problema é que você tem strings vazias em sua tabela. Você precisará lidar com isso, provavelmente com uma instrução case, como:
execute %{ALTER TABLE "table1" ALTER COLUMN columnB TYPE integer USING CAST(CASE columnB WHEN '' THEN NULL ELSE columnB END AS INTEGER)}
Atualização:completamente reescrita com base na pergunta atualizada.