oracle 8.1.6 insert into ec_orders (order_id, user_session_id, order_state, in_basket_date) select :order_id, :user_session_id, 'in_basket', sysdate from dual where not exists (select 1 from ec_orders where user_session_id=:user_session_id and order_state='in_basket') insert into ec_problems_log (problem_id, problem_date, problem_details) values (ec_problem_id_sequence.nextval, sysdate,:errormsg) insert into ec_items (item_id, product_id, color_choice, size_choice, style_choice, order_id, in_cart_date) (select ec_item_id_sequence.nextval, :product_id, :color_choice, :size_choice, :style_choice, :order_id, sysdate from dual where not exists (select 1 from ec_items where order_id=:order_id and product_id=:product_id and color_choice [ec_decode $color_choice "" "is null" "= :color_choice"] and size_choice [ec_decode $size_choice "" "is null" "= :size_choice"] and style_choice [ec_decode $style_choice "" "is null" "= :style_choice"] and ((sysdate - in_cart_date) * 86400 < 5)))