Som standard behandlar SQL Plus '&' som ett specialtecken som börjar en ersättningssträng. Detta kan orsaka problem när du kör skript som råkar innehålla '&' av andra anledningar:
SQL> insert into customers (customer_name) values ('Marks & Spencers Ltd');
Enter value for spencers:
old 1: insert into customers (customer_name) values ('Marks & Spencers Ltd')
new 1: insert into customers (customer_name) values ('Marks Ltd')
1 row created.
SQL> select customer_name from customers;
CUSTOMER_NAME
------------------------------
Marks Ltd
Om du vet att ditt skript innehåller (eller kan inkludera) data som innehåller "&"-tecken, och du inte vill ha ersättningsbeteendet enligt ovan, använd set define off
för att stänga av beteendet när du kör skriptet:
SQL> set define off
SQL> insert into customers (customer_name) values ('Marks & Spencers Ltd');
1 row created.
SQL> select customer_name from customers;
CUSTOMER_NAME
------------------------------
Marks & Spencers Ltd
Du kanske vill lägga till set define on
i slutet av skriptet för att återställa standardbeteendet.