Med libpqxx kan du skicka ett nollvärde genom att anropa operatören () på en förberedd sats utan argument, t.ex.:
xAction.prepared("insertBulkData")()(uuid)(coreNo).exec();
skulle skicka NULL som den första parametern för satsen.
Jag tror inte att du kan få den att automatiskt ersätta en tom sträng med NULL. Ett sätt att uppnå detta skulle vara att modifiera den SQL du använder:
INSERT INTO T_CORES (MAC, UUID, CORE_NO) VALUES (CASE WHEN $1='' THEN NULL ELSE $1 END, $2, $3)