对于说“b& d jigsaw”的部分,& D在运行脚本后不断消失。当我运行它时,系统会提示我为D添加一个值。我尝试在&和/或之间添加引号。什么都行不通..任何人都有任何想法?脚本下方是错误。谢谢!
INSERT INTO PRODUCT VALUES ('2232/QTY', 'B&D jigsaw, 12-in. blade', '30-Dec-11', 8, 5, '109.92', '0.05', 24288);
INSERT INTO PRODUCT VALUES ('2232/QWE', 'B&D jigsaw, 8-in. blade', '24-Dec-11', 6, 5, '99.87', '0.05', 24288);
INSERT INTO PRODUCT VALUES ('2238/QPD', 'B&D cordless drill, 1/2-in.', '20-Jan-12', 12, 5, '38.95', '0.05', 25595);
插入1行。
旧:
INSERT INTO PRODUCT VALUES ('2232/QTY', 'B&D jigsaw, 12-in. blade', '30-Dec-11', 8, 5, '109.92', '0.05', 24288)
新:
INSERT INTO PRODUCT VALUES ('2232/QTY', 'B jigsaw, 12-in. blade', '30-Dec-11', 8, 5, '109.92', '0.05', 24288)
插入1行。
旧:
INSERT INTO PRODUCT VALUES ('2232/QWE', 'B&D jigsaw, 8-in. blade', '24-Dec-11', 6, 5, '99.87', '0.05', 24288)
新:
INSERT INTO PRODUCT VALUES ('2232/QWE', 'B jigsaw, 8-in. blade', '24-Dec-11', 6, 5, '99.87', '0.05', 24288)
插入1行。
旧:
INSERT INTO PRODUCT VALUES ('2238/QPD', 'B&D cordless drill, 1/2-in.', '20-Jan-12', 12, 5, '38.95', '0.05', 25595)
新:
INSERT INTO PRODUCT VALUES ('2238/QPD', 'B cordless drill, 1/2-in.', '20-Jan-12', 12, 5, '38.95', '0.05', 25595)
答案 0 :(得分:1)
默认情况下,SQL Plus会对待'&'作为开始替换字符串的特殊字符。在运行恰好包含'&'的脚本时,这可能会导致问题。出于其他原因:
如果您知道您的脚本包含(或可能包含)包含'&'字符,并且您不希望上面的替换行为,然后使用set define off在运行脚本时关闭行为:
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
您可能希望在脚本末尾添加set define on以恢复默认行为。