Oracle备忘录(八)--表
来源:互联网 发布:左程云算法最优解 pdf 编辑:程序博客网 时间:2024/05/29 17:58
SQL> /*SQL> SQL类型SQL> 1. DML(Data Manipulation Lanuage 数据操作语言): select insert update deleteSQL> 2. DDL(Data Definition Language 数据定义语言): create/alter/drop/truncate tableSQL> create/drop view/sequence/index/synonymSQL> 3. DCL(Data Control Language 数据控制语言): commit rollbackSQL> */SQL> host clsSQL> --隐式/显式插入nullSQL> --地址符 &SQL> insert into emp(empno,ename,sal,deptno) 2 values(&empno,&ename,&sal,&deptno);输入 empno 的值: 1002输入 ename 的值: 'Mary'输入 sal 的值: 5000输入 deptno 的值: 10原值 2: values(&empno,&ename,&sal,&deptno)新值 2: values(1002,'Mary',5000,10)已创建 1 行。SQL> /输入 empno 的值: 1003输入 ename 的值: 'Mike'输入 sal 的值: 6000输入 deptno 的值: 30原值 2: values(&empno,&ename,&sal,&deptno)新值 2: values(1003,'Mike',6000,30)已创建 1 行。SQL> ed已写入 file afiedt.buf 1 insert into emp(empno,ename,sal,deptno) 2* values(&empno,'&ename',&sal,&deptno) ---下面字符串就不用加引号了SQL> /输入 empno 的值: 1004输入 ename 的值: Jerry输入 sal 的值: 5000输入 deptno 的值: 10原值 2: values(&empno,'&ename',&sal,&deptno)新值 2: values(1004,'Jerry',5000,10)SQL> select empno,ename,&t 2 from emp;输入 t 的值: sal原值 1: select empno,ename,&t新值 1: select empno,ename,sal EMPNO ENAME SAL ---------- ---------- ---------- 1001 Tom 6000 1002 Mary 5000 1003 Mike 6000 1004 Jerry 5000 7369 SMITH 800 7499 ALLEN 1600 已选择18行。SQL> /输入 t 的值: deptno原值 1: select empno,ename,&t新值 1: select empno,ename,deptnoSQL> select * 2 from &t;输入 t 的值: dept原值 2: from &t新值 2: from dept DEPTNO DNAME LOC ---------- -------------- ------------- 10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON SQL> rollback;回退已完成。SQL> host clsSQL> --批处理--加上where 1 = 2 就是为了不复制表中的数据--当然可以选定要的数据添加到新建的表中 --如: where deptno = 10 就把部门为10的加入到了新建的表SQL> create table emp10 as select * from emp where 1=2;表已创建。SQL> desc emp10 名称 是否为空? 类型 ----------------------------------------- -------- ---------------------------- EMPNO NUMBER(4) ENAME VARCHAR2(10) JOB VARCHAR2(9) MGR NUMBER(4) HIREDATE DATE SAL NUMBER(7,2) COMM NUMBER(7,2) DEPTNO NUMBER(2)SQL> select * from emp10;未选定行SQL> --一次性从emp中 将所有10号部门的员工插入到emp10SQL> insert into emp10 2 select * from emp where deptno=10;已创建3行。 SQL> set linesize 120SQL> col sal for 9999SQL> host clsSQL> --更新数据SQL> --删除数据SQL> /*SQL> --delete 和truncate的区别SQL> --1. delete逐条删除 truncate 先摧毁表 再重建SQL> --2. **** delete 是DML(可以回滚),truncate是DDL(不可以回滚)SQL> --3. delete不会释放空间 truncate会SQL> --4. delete会产生碎片 truncate不会SQL> --5. delete可以闪回,truncate不可以SQL> */SQL> set feedback off --去除 “选中14行”这样的字眼--执行sql语句SQL> @c:\sql.sqlSQL> select count(*) from testdelete; COUNT(*) ---------- 5000 SQL> set timing onSQL> delete from testdelete;已用时间: 00: 00: 00.04SQL> set timing offSQL> drop table testdelete purge; --彻底删除,不放入回收站SQL> @c:\sql.sqlSQL> select count(*) from testdelete; COUNT(*) ---------- 5000 SQL> set timing onSQL> truncate table testdelete;已用时间: 00: 00: 07.87SQL> set timing offSQL> host clsSQL> /*SQL> Oracle中的事务SQL> 1. 起始标志: DML语句SQL> 2. 结束标志: 提交: 显式提交 commitSQL> 隐式提交 正常退出exit ,DDL语句SQL> 回滚: 显式 rollbackSQL> 隐式 掉电,宕机,非正常退出SQL> */SQL> --保存点SQL> create table testsavepointSQL> set feedback on--创建保存点语法SQL> savepoint a;SQL> rollback to savepoint a;SQL> commit;SQL> spool off
0 0
- Oracle备忘录(八)--表
- oracle备忘录(五)--多表查询
- oracle备忘录(一)---基础知识
- oracle备忘录(三)--函数
- Oracle备忘录(七)--综合
- Oracle备忘录(九) -- 视图
- Oracle 备忘录
- Oracle备忘录
- ORACLE备忘录
- oracle备忘录
- oracle体系结构(八)
- Oracle(八)老师
- Oracle-BPM(八)
- Oracle初探(八)
- Oracle-BPM(八)
- oracle备忘录(二)--基础知识基本语法
- oracle备忘录(四)--分组函数
- Oracle备忘录(十)--序列,索引
- Android4.1 关于Rotation相关的Configuration整体分析
- Windows 9信息曝光:统一开发接口、整合Cortana到任务栏
- [ACM] POJ 1442 Black Box (堆,优先队列)
- Blue Jeans
- linux内核数据结构—kfifo
- Oracle备忘录(八)--表
- JSP简单练习-页面重定向
- Android Menu add方法
- Ubuntu10.04.4 安装 linphone-android
- Android的系统架构
- 关于某些Android系统不能找到开发者选项的解决办法
- android中shape的属性大全
- java中class与classpath
- 如何成为一名机智的ios程序员