最近使用开发的过程中出现了一个小问题,顺便记录一下原因和方法--行sql

    SQL> desc test; 名称 是不是为空? 类型 ----------------------------------------- -------- ------------------------ ID VARCHAR2(50) NAME VARCHAR2(20)

    begin for i in 10 ..1000 loop insert into test values(i,'wqp'); update test set name='top'; end loop; commit; end;

    演示 pause  变量

    SQL> show pause; PAUSE 为 OFF SQL> show pagesize pagesize 14

    set pause on set pause ***************************

    这样再做查询 select  * from test

    2:设置自动提交

    set autocommit on

    或者

    set autocommit immediate

    关闭: set  autocommit off

    set autocommit on 

    表现状态:

    show autocommit

    这样做DML语句的时候会自动提交;但是一般设置为关闭,以免错误提交后懊悔。

    
SQL清屏命令:  
clear screen

    编辑脚本:

    define命令:定义一些变量:

    SQL> define

    DEFINE _DATE           = "28-5月 -13" (CHAR)

    DEFINE _CONNECT_IDENTIFIER = "orcl" (CHAR)

    DEFINE _USER           = "HR" (CHAR)

    DEFINE _PRIVILEGE      = "" (CHAR)

    DEFINE _SQLPLUS_RELEASE = "1101000600" (CHAR)

    DEFINE _EDITOR         = "Notepad" (CHAR)

    DEFINE _O_VERSION      = "Oracle Database 11g Enterprise Edition Release 11.1.

    6.0 - Production

    With the Partitioning, OLAP, Data Mining and Real Application Testing options"

    CHAR)

    DEFINE _O_RELEASE      = "1101000600" (CHAR)

    DEFINE _RC             = "0" (CHAR)

    可以看到  _editor = notepad

    在windows中 notepad的路径一定要包含在path环境变量中,

    edit ss

    默认是编辑 ss的文件。

    PL/SQL要另起一行 加上/ 才能执行。

    4:列出sql 缓冲区中的内容并修改

    list 或者 l

    编辑缓冲区以后行命令:

    表现出来的缓冲区内容 * 代表以后行,

    如果某行出现错误,错误内容的行为以后行,

    change 命令使用:

    change命令 缩写 c

    用法: SQL> l 1 select id ,name from test 2 where id > 10 3 and id <100 4* SQL> l 4 --列出第四行数据 4* SQL> l3 --列出第三行数据 3* and id <100 SQL> c/100/15 --这句是把 100修改成10 3* and id <15 SQL> l ---列出修改后的sql 1 select id ,name from test 2 where id > 10 3 and id <15 4* SQL> / ID NAME -------------------------------------------------- ------------ 11 top 12 top 13 top 14 top 11 top 12 top 13 top 14 top 已选择8行。

    每日一道理
人生是洁白的画纸,我们每个人就是手握各色笔的画师;人生也是一条看不到尽头的长路,我们每个人则是人生道路的远足者;人生还像是一块神奇的土地,我们每个人则是手握农具的耕耘者;但人生更像一本难懂的书,我们每个人则是孜孜不倦的读书郎。

    在某一行 添加部分sql   命令:  append    简称  a

    SQL> list 1 select id ,name from test 2 where id > 10 3 and id <15 4* SQL> l 3 --列出第三行 3* and id <15 SQL> a and name like '%to' -- a 是append的缩写 是在这个语句后追加响应的语句 后面是追加的语句 3* and id <15 and name like '%to' SQL> list 1 select id ,name from test 2 where id > 10 3 and id <15 and name like '%to' 4* SQL> / 未选定行 SQL> l 3 3* and id <15 and name like '%to' --列出第三行 SQL> c/'%to'/'%to%' --修改第三行 c是change的缩写 /需要修改的地方/修改后的内容 3* and id <15 and name like '%to%' SQL> list 1 select id ,name from test 2 where id > 10 3 and id <15 and name like '%to%' 4* SQL> / ID NAME -------------------------------------------------- -------------------- 11 top 12 top 13 top 14 top 11 top 12 top 13 top 14 top 已选择8行。

    在某一行后插入一行的命令:   input   简称 i 

    SQL> list 1 select id ,name from test 2 where id > 10 3 and id <15 and name like '%to%' 4 5 0 6* 0 /** dddd**/ --这里是上一次插入错误了,下次修改 SQL> 0 /** this is a demo **/ --往第0行插入了一个注释; SQL> list 1 /** this is a demo **/ 2 select id ,name from test 3 where id > 10 4 and id <15 and name like '%to%' 5 6 0 7* 0 /** dddd**/ SQL> 4 ---如果想在某一行后插入语句,首先 list 到 行号 这样就能够把行号设置为以后行 4* and id <15 and name like '%to%' SQL> i and name is not null -----表现以后行后,可以通过 input 命令 简称 i 停止追加 sql 语句 SQL> list 1 /** this is a demo **/ 2 select id ,name from test 3 where id > 10 4 and id <15 and name like '%to%' 5 and name is not null 6 7 0 8* 0 /** dddd**/ SQL>

文章结束给大家分享下程序员的一些笑话语录: 腾讯的动作好快,2010年3月5日19时28分58秒,QQ同时在线人数1亿!刚刚看到编辑发布的文章,相差才2分钟,然后连专题页面都做出来了,他们早就预料到了吧?(其实,每人赠送10Q币,轻轻松松上两亿!)

--------------------------------- 原创文章 By
行和sql
---------------------------------