数据库数据带&符号 导入有问题的处理办法

在sql文件头部加个:
set feedback off
set define off
 

 

我们在plsql里面将一条语句导出时会出现以下结果(测试表t_test):

prompt Importing table t_test
set feedback off
set define off
insert into t_test('1','p&1');

prompt Done.
---------------------------
prompt 
显示后面的提示,相当于一般的操作系统命令echo,输出后面的信息Importing table t_test
set feedback off

1。set feedback

有三种方式:

           set feedback on

           set feedback off

           set feedback n

默认的当一条sql发出的时候,oracle会给一个反馈,比如说创建表的时候,如果成功,命令行会返回类似:Table created的反馈,又比如执行一个pl/sql成功的时候,命令行会返回:PL/SQL procedure successfully completed 。当载脚本中运行很多语句的时候,一般将feedback设为off。

set feedback n:当一条sql语句返回n或者大于n行记录的时候,就会有feedback,比如:set feedback 5,当返回记录等于或多于5行的时候会有类似8 rows selected.的反馈.如果返回行少于5则没有此反馈。

set define off 

 

在SQL*Plus中默认的"&"表示替代变量,也就是说,只要在命令中出现该符号,SQL*Plus就会要你输入替代值。这就意味着你无法将一个含有该符号的字符串输入数据库或赋给变量,如字符串“SQL&Plus”系统会理解为以“SQL”打头的字符串,它会提示你输入替代变量Plus的值,如果你输入ABC,则最终字符串转化为“SQLABC”。 
  set define off 则关闭该功能,“&”将作为普通字符,如上例,最终字符就为“SQL&Plus” 

set define off关闭替代变量功能 
set define on 开启替代变量功能 
set define $   (不是能是字母数字和空格)将替代默认变量标志符 &为“$”原来的&标志将以普通字符的形式插入,而$后面的字符这会是变量,将会提示你输入。

转载于:https://www.cnblogs.com/haoerlv/p/7234753.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值