网站首页 > 技术文章 正文
79、CASE语句的用法?
Oracle用法很简单:
SELECT last_name, job_id, salary
CASE job_id
WHEN ‘IT_PROG’ THEN 1.10*salary
WHEN ‘ST_CLERK’ THEN 1.15*salary
WHEN ‘SA_REP’ THEN 1.20*salary
ELSE salary END “REVISED_SALARY”
FROM employees
80、 truncate和delete的区别?
1、TRUNCATE在各种表上无论是大的还是小的都非常快。如果有ROLLBACK命令DELETE将被撤销,而TRUNCATE则不会被撤销。
2、TRUNCATE是一个DDL语言而DELETE是DML语句,向其他所有的DDL语言一样,他将被隐式提交,不能对TRUNCATE使用ROLLBACK命令。
3、TRUNCATE将重新设置高水平线和所有的索引。在对整个表和索引进行完全浏览时,经过TRUNCATE操作后的表比DELETE操作后的表要快得多。
4、TRUNCATE不能触发触发器,DELETE会触发触发器。
5、不能授予任何人清空他人的表的权限。
6、当表被清空后表和表的索引讲重新设置成初始大小,而delete则不能。
7、不能清空父表。
81、 表空间如何扩展?并用语句写出?
两种扩展方式:
a) 增加数据文件
alter tablespace tablespace_name add datafile ‘’ xxMB
b) 扩展数据文件大小
alter database datafile ‘’ resize newMB
82、 表空间区管理方式?哪种方式现在是推荐使用的?
a) 字典管理方式
extent management dictionary;默认方式
b) 本地管理方式
extent management local[autoallocate/uniform xxmb];
83、 用什么函数获得日期?和日期中的月,日,年
to_char(sysdate,’year’):tow thsound six to_char(sysdate,’yyyy’) :2006
to_char(sysdate,’month’):8月 to_char(sysdate,’mm’):08
to_char(sysdate,’day’):星期4 to_char(sysdate,’dd’):22
84、 分区表的应用?
a) 一个分区表有一个或多个分区,每个分区通过使用范围分区、散列分区、或组合分区分区的行
b) 分区表中的每一个分区为一个段,可各自位于不同的表空间中
c) 对于同时能够使用几个进程进行查询或操作的大型表分区非常有用
85、 谈谈索引的用法及原理?
索引是若干数据行的关键字的列表,查询数据时,通过索引中的关键字可以快速定位到要访问的记录所在的数据块,从而大大减少读取数据块的I/O次数,因此可以显著提高性能。
86、 存储过程的应用,如何既有输入又有输出?
Create procedure pro_name
(xxxx in/out type;
yyyy in/out/inout type;
) is/as
zzzz type;
begin
sqlpro;
exception
exceptionxxxxx;
commit;
end;
87、 常发生的异常有哪些?
常用预定义例外
CURSOR_ALREADY_OPEN — ORA-06511 SQLCODE = -6511 游标已经打开
DUP_VAL_ON_INDEX — ORA-00001 SQLCODE = -1 违反唯一性约束
INVALID_CURSOR — ORA-01001 SQLCODE = -1001 非法游标操作
INVALID_NUMBER — ORA-01722 SQLCODE = -1722 字符向数字转换失败
LOGIN_DENIED — ORA-01017 SQLCODE = -1017
NO_DATA_FOUND — ORA-01403 SQLCODE = +100 没有找到数据
NOT_LOGGED_ON — ORA-01012 SQLCODE = -1012 没有连接到数据库
PROGRAM_ERROR — ORA-06501 SQLCODE = -6501 内部错误
STORAGE_ERROR — ORA-06500 SQLCODE = -6500
TIMEOUT_ON_RESOURCE — ORA-00051 SQLCODE = -51
TOO_MANY_ROWS — ORA-01422 SQLCODE = -1422 返回多行
TRANSACTION_BACKED_OUT — ORA-00061 SQLCODE = -61
VALUE_ERROR — ORA-06502 SQLCODE = -6502 数值转换错误
ACCESS_INTO_NULL试图为NULL对象的属性赋值
ZERO_DIVIDE — ORA-01476 SQLCODE = -1476 被零除
OTHERS — 其它任何错误的处理
88、 如何使用异常?
在oracle中有三种类型的异常。预定义的异常 非预定义的异常 用户定义的异常 第二种非预定义的异常是与特定的oracle错误关联。并且用PRAGM EXCEPTION_INIT(EXCEPTION_NAME,ERROR_NUMBER)关联一起的。但是到底有什么用啊? 例如:declare dup_primary_key exception; pragma exception_init(dup_primary_key,-1); begin insert into itemfile values(‘i201′,’washer’,'spares’,100,50,250,12,30); exception when dup_primary_key then dbms_output.put_line(‘重复项编号-主键冲突’); end
第一种的使用方法:exception
when 异常名称 then
异常处理代码;
第三种的用法:if 条件 then
raise_application_error(-20000“““`-20999,提示信息);
end if;
89、优化的策略一般包括:
? 内存优化
? 操作系统优化
? 数据存储的优化
? 网络优化等方法
具体到不同的数据库涉及到要调整不同的数据库配置文件、不同的操作系统参数、网络参数等等, 不同的数据库不同
猜你喜欢
- 2024-10-19 详解oracle分页存储过程---附实例分享
- 2024-10-19 详解Oracle 数据库enq:TX-index contention等待事件及解决方案
- 2024-10-19 分享一个在表关联时降低业务逻辑复杂度的查询sql
- 2024-10-19 「Oracle」为大家带来connect by的用法,Oracle的递归
- 2024-10-19 基于dba_lobs查找Oracle中lobsegment、lobindex与表之间关系
- 2024-10-19 Oracle项目管理系统之沟通协作 oracle 合作伙伴
- 2024-10-19 oracle sql优化 oracle sql优化的几种方法
- 2024-10-19 关于Oracle中重复数据只取一条记录
- 2024-10-19 ORACLE PL/SQL中异常处理全面分析
- 2024-10-19 Mysql中的关联查询(内连接,外连接,自连接)
你 发表评论:
欢迎- 05-10如何优化数据库和前端之间的交互?
- 05-10前端代码优化小秘籍(前端优化24条建议)
- 05-10VS Code当中的15个神仙插件,值得收藏
- 05-10如何自己开发一个Google浏览器插件?
- 05-10前端流行框架Vue3教程:14. 组件传递Props效验
- 05-10吃了一年的SU,最好用的插件都在这了
- 05-10前端必看!这款神器让网站界面告别千篇一律
- 05-10程序员请收好:10个非常有用的 Visual Studio Code 插件
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端md5加密 (49)
- 前端路由 (55)
- 前端数组 (65)
- 前端定时器 (47)
- 前端懒加载 (45)
- 前端接口 (46)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle查询数据库 (45)
- oracle约束 (46)
- oracle 中文 (51)
- oracle链接 (47)
- oracle的函数 (57)
- mac oracle (47)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)