The following will not work variable1 = ' ABC' || ' and PRODUCT_ID = 101';
Why because is the value of variable1 will be then 'ABC and PRODUCT_ID = 101', where it should only be 'ABC'.
Can you try the following,
variable1 = ' ABC' || TO_NVARCHAR(101);
select * from "SCHEMA1"."TABLE1" where product_name || TO_NVARCHAR(product_id ) = :variable1 ;
But I recommend using the below, as I think this is the standard.
declare variable1 NVARCHAR(100);
declare variable2 INT;
variable1= 'ABC';
variable2= 101;
select * from "SCHEMA1"."TABLE1" where product_name = :variable1 and product_id = :variable2 ;
Regards,
Nithin