Standaard behandelt SQL Plus '&' als een speciaal teken dat begint met een vervangende tekenreeks. Dit kan om andere redenen problemen veroorzaken bij het uitvoeren van scripts die '&' bevatten:
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
Als u weet dat uw script gegevens bevat (of kan bevatten) die '&'-tekens bevatten, en u niet wilt dat het vervangingsgedrag zoals hierboven wordt beschreven, gebruik dan set define off
om het gedrag tijdens het uitvoeren van het script uit te schakelen:
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
Misschien wilt u set define on
. toevoegen aan het einde van het script om het standaardgedrag te herstellen.