S libpqxx můžete odeslat hodnotu null voláním operátoru () na připraveném příkazu bez argumentů, např.:
xAction.prepared("insertBulkData")()(uuid)(coreNo).exec();
by poslal NULL jako první parametr pro příkaz.
Nemyslím si, že jej dokážete automaticky nahradit prázdným řetězcem NULL. Jedním ze způsobů, jak toho dosáhnout, by bylo upravit SQL, který používáte:
INSERT INTO T_CORES (MAC, UUID, CORE_NO) VALUES (CASE WHEN $1='' THEN NULL ELSE $1 END, $2, $3)