Oracle面试题

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

Oracle中function和procedure的区别

function为函数procedure为存储过程。

  1. 可以理解函数是存储过程的一种
  2. 函数可以没有参数,但是一定需要一个返回值存储过程可以没有参数,不需要返回值
  3. 函数return返回值没有返回参数模式存储过程通过out参数返回值, 如果需要返回多个参数则建议使用存储过程
  4. 在sql数据操纵语句中只能调用函数而不能调用存储过程

Oracle的导入导出有几种方式有何区别

使用PLSQL相关工具

dmp文件方式
​ dmp文件是二进制的可以跨平台并且包含权限支持大字段数据是用的最广泛的一种。

sql文件方式

​ SQL文件可用文本编辑器查看有利于可读性但效率不如dmp文件适合小数据量导入导出。尤其注意的是表中不能有大字段 blob,clob,long

pde文件

​ pde格式是PL/SQL 自带的文件格式适用于PL/SQL工具编辑器无法查看。

使用Oracle工具

​ 使用Oracle工具exp/imp

怎样优化Oracle数据库有几种方式

数据库性能最关键的因素在于I/O优化数据库最关键的问题在于减少磁盘的I/O优化Oracle可以分为物理和逻辑两个方面。

物理优化

oracle的运行环境
使用合适的优化器
合理配置oracle实力参数
建立合适的索引减少IO
建立表分区

逻辑优化

对表进行逻辑分割
对sql语句进行优化

Oracle中字符串用什么符号链接

  1. 使用符号“||”
SELECT '工号为'||FNumber || '的员工姓名为' || FName FROM T_Employee
WHERE FName IS NOT NULL 
  1. 使用CONCAT函数进行拼接Oracle中的concat函数仅支持两个字符串进行拼接如果要再多可以嵌套使用。
SELECT CONCAT('工号:',FNumber) FROM T_Employee 

Oracle分区的优点?

Oracle的分区可以分为列表分区、范围分区、散列分区、复合分区。

  1. 增强可用性如果表的一个分区由于系统故障而不能使用表的其余好的分区仍可以使用
  2. 减少关闭时间如果系统故障只影响表的一部份分区那么只有这部份分区需要修复可能比整个大表修复花的时间更少
  3. 维护轻松如果需要得建表独产管理每个公区比管理单个大表要轻松得多
  4. 均衡I/O可以把表的不同分区分配到不同的磁盘来平衡I/O改善性能
  5. 改善性能对大表的查询、增加、修改等操作可以分解到表的不同分区来并行执行可使运行速度更快
  6. 分区对用户透明最终用户感觉不到分区的存在。

Oracle是怎样分页的

Oracle中使用rownum来进行分页, 这个是效率最好的分页方法hibernate也是使用rownum来进行oralce分页的

select * from 
  ( select rownum r,a from tabName where rownum <= 20 ) 
where r > 10

Oralce怎样存储文件能够存储哪些文件

Oracle 能存储 clob、nclob、 blob、 bfile
Clob 可变长度的字符型数据也就是其他数据库中提到的文本型数据类型
Nclob 可变字符类型的数据不过其存储的是Unicode字符集的字符数据
Blob 可变长度的二进制数据
Bfile 数据库外面存储的可变二进制数据

比较truncate和delete命令

  1. Truncate 和delete都可以将数据实体删掉truncate 的操作并不记录到 rollback日志所以操作速度较快但同时这个数据不能恢复
  2. Delete操作不腾出表空间的空间
  3. Truncate 不能对视图等进行删除
  4. Truncate是数据定义语言DDL而delete是数据操纵语言(DML)

简述oracle中 dml、ddl、dcl的使用

DML

Data Manipulation Language数据操作语言用于检索或者修改数据。

DML包括

​ SELECT用于检索数据

​ INSERT用于增加数据到数据库

​ UPDATE用于从数据库中修改现存的数据

​ DELETE用于从数据库中删除数据。

DDL

Data Definition Language数据定义语言 用于定义数据的结构比如 创建、修改或者删除数据库对象。

DDL包括DDL语句可以用于创建用户和重建数据库对象。下面是DDL命令

​ CREATE 创建

​ ALTER 修改

​ DROP 删除

DCL

Data Control Language数据控制语言用于定义数据库用户的权限。

DCL包括
GRANT 授权

REVOKE 回收权限

deny 拒绝授予主体权限。防止主体通过其组或角色成员身份继承权限

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: oracle