ORACLE 学习拾遗

本文分享了作者在学习 Oracle 过程中遇到的问题及解决方法,包括动态执行 SQL 语句时字符串转义的技巧、变量赋值的正确语法以及使用 EXP 工具进行数据导出时的注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

      今天在学习oracle中遇到两个小问题, 在此贴出:

declare
   v_table varchar2(300);
  -- str varchar2(15):='yao';
begin
   v_table :='create table test_new(
   id number(4),
   name varchar2(15)
   )';
   execute immediate v_table;
   execute immediate 'insert into test_new values(120,'tt')';----此种形式可以
                                                               --oracle中...
   commit;
   dbms_output.put_line('创建成功');
end;
当我运行时总是报错, 后来调试了好久,将字符tt两侧分别加两个单引号如:''就可以了...

  这其实也就是一个' '中添加' '的问题, 联想到了自己以前在Java中为“”中不能插入“”而郁闷,后来使用转移总算解决了 例子:

System.out.println("Jane Campion directed /"The Piano/" in 1993."); ^_^  ^_^, 现在想来觉得自己那时好傻的, 因为在网上搜寻的时候就描述为:双引号中如何添加双引号。 所以按术语来说就是 转义。

 

(2)declare
     cnt number(4);
   cnt :=1;

如此声明是错误的,而这在java里是可以这样子使用的。

改正为:  cnt number(4):=1; 

 

(3)EXP 的 parfile方式,

exp parfile='F://parameterFile.txt';

parameterFile中的内容为:exp userid=scott/tiger@orcl   tables=(emp,dept) file='D://new3.dmp'

当我在命令行下运行时老是报错。 后来经排查, 原来是我的parameterFile文件中多加了一个exp...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值