问题
How can I used Oracle Sequences to auto-generate primary keys for my tables while exporting data into Oracle using DBUnit ?
回答1:
I had the same issue and didn't find any answer. I ended up using a trigger to automatically generate the technical key, as described in this post create table with sequence.nextval in oracle
CREATE OR REPLACE TRIGGER ticketSequenceTrigger
BEFORE INSERT
ON TICKET
FOR EACH ROW
WHEN (new.id IS null)
DECLARE
v_id TICKET.id%TYPE;
BEGIN
SELECT TICKET_ID_SEQ.nextval INTO v_id FROM DUAL;
:new.id := v_id;
END ticketSequenceTrigger;
Then I simply ommit the id column in the initial and expected datasets:
<ticket title="Ticket 1"
description="Description for ticket 1"
status="NEW"
created_date="2013-07-01 12:00:00"/>
来源:https://stackoverflow.com/questions/16697740/how-to-use-oracle-sequence-numbers-in-dbunit