当出现如下报错时请检查你的SQL,肯定是值里面有特殊字符&。如果是没有用的直接删除就可以了,如果有用那么就需要处理一下了(默认插入值中带&符号,且后面有字符串,就会被误认为变量名)。
处理方法(意思是要把&用单引号单独引起来,然后用拼接的方式来处理这一列)
将 & 替换为 '||'&'||'
在plsql developer上回出现如下图提示
在sqlplus就是如下提示
SQL> insert into va values('T&K/泰恩康');
输入 k 的值: 只是个符号我不想要赋值。。。。
原值 1: insert into va values('T&K/泰恩康')
新值 1: insert into va values('T只是个符号我不想要赋值。。。。/泰恩康')
已创建 1 行。
SQL> select * from va;
FS_FAILOVER_OBSERVER_HOST
--------------------------------------------------------------------------------
T只是个符号我不想要赋值。。。。/泰恩康
使用单引号和拼接方法,将&和被误认为变量名的字符隔离开拼接处理。
SQL> insert into va values('T'||'&'||'K/泰恩康');
已创建 1 行。
SQL> select * from va;
FS_FAILOVER_OBSERVER_HOST
--------------------------------------------------------------------------------
T&K/泰恩康
其实后面跟的是空格就不会有影响,可以直接插入。
SQL> insert into va values('a7 & >d');
已创建 1 行。
SQL> select * from va;
FS_FAILOVER_OBSERVER_HOST
--------------------------------------------------------------------------------
a7 & >d
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。