Dengan libpqxx Anda dapat mengirim nilai nol dengan memanggil operator () pada pernyataan yang disiapkan tanpa argumen, misalnya:
xAction.prepared("insertBulkData")()(uuid)(coreNo).exec();
akan mengirimkan NULL sebagai parameter pertama untuk pernyataan tersebut.
Saya tidak berpikir Anda bisa mendapatkannya untuk secara otomatis mengganti string kosong dengan NULL. Salah satu cara untuk mencapai ini adalah dengan memodifikasi SQL yang Anda gunakan:
INSERT INTO T_CORES (MAC, UUID, CORE_NO) VALUES (CASE WHEN $1='' THEN NULL ELSE $1 END, $2, $3)