找回密码
 立即注册
首页 业界区 安全 [20251028]SQLPlus的行编辑器.txt

[20251028]SQLPlus的行编辑器.txt

数察啜 2025-11-2 03:00:08
[20251028]SQLPlus的行编辑器.txt

--//学习SQLPlus的行编辑器.看了一个网上的教学视频,对方使用SQLPlus的行编辑器,估计许多人基本不会,感觉有时候利用它效率还
--//是很高的,查一些资料做一个记录。

--//基本就5个命令:LIST / CHANGE / APPEND / DEL /INPUT。

1、行级编辑 5 件套(纯 SQL*Plus 内部)
1. L[IST]`              -- 列出缓存区,带行号  
2. L n 或 n             -- 把第 n 行设为"当前行",提示符变成 n*  
3. C[hange] /旧/新      -- 只改当前行里第一次出现的"旧"串  
4. A[ppend] 文本        -- 在当前行尾部直接追加,**不用引号**  
5. DEL n m              -- 删除 n 到 m 行;缺省删当前行  
6. I[nput] 或 I 文本    -- 在当前行之后插入新行;单独 INPUT 进入多行插入模式,空行退出

--//网上抄的例子:

2、一个完整示范:

SQL> SELECT empno, ename
  2  FORM emp
  3  WHERE deptno = 10;
ORA-00923: FROM keyword not found

--// 1. 先看看缓存区
SQL> L
  1  SELECT empno, ename
  2  FORM emp
  3* WHERE deptno = 10

--// 2. 第 2 行写错了,改它
SQL> 2                    -- 把第 2 行设成当前行
  2* FORM emp
SQL> C /FORM/FROM
  2* FROM emp

--// 3. 还想在后面加 ORDER BY
SQL> A  ORDER BY empno
  2* FROM emp ORDER BY empno

--// 4. 再插入一行空行然后继续写
SQL> I
  3   AND sal > 1000
  4
SQL> L
  1  SELECT empno, ename
  2  FROM emp ORDER BY empno
  3  WHERE deptno = 10
  4* AND sal > 1000

--// 5. 顺序乱了,干脆删掉第 3、4 行,重新写
SQL> DEL 3 4
SQL> I
  3  WHERE deptno = 10
  4    AND sal > 1000
  5  ORDER BY empno
  6
SQL> /

--//自己做一些补充:
--//在行尾加入一些内容。
9999 xxxxxx
--//直接修改第5行。
--//5 XXXXX

3、结论:
--// SQLPlus内部只有行级编辑,不能算是好用,看老外许多家伙还是使用比较熟练。
--//简单一点还是定义自己喜欢的编辑器。
> define _editor
DEFINE _EDITOR         = "vi -c 'set notitle'" (CHAR)



来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

相关推荐

2025-11-20 02:49:24

举报

2025-11-24 23:03:53

举报

您需要登录后才可以回帖 登录 | 立即注册