什么是相关子查询?

这是一个子查询,子查询本身又是一个多表查询。where不能用组函数,但是可以用字符函数instr()。除了order by排序没有考,查询语句的所有内容都考了。这个题有点难度。


今天下午新的内容:存储过程,函数和触发器。这三个也是数据库的对象。一共要学习十个数据库的对象:表,视图,序列,索引和同义词。今天下午学五个:存储过程,存储函数,触发器,包和包体。经常用到这十个数据库的对象。

在Java中不能直接调用PLSQL程序,实际上它调用的是存储过程和存储函数。存储过程和存储函数是由PLSQL语言写的,从而这样来调我们的PLSQL。

存储过程不能通过return语句返回一个值,存储函数可以通过return语句返回一个值。除此之外,可以认为存储过程和存储函数是一样的。

下午的重点不是PLSQL,下午的重点是如何用PLSQL创建几个数据库的对象。

AS相当于PLSQL程序的declare,如果没有声明或者是说明部分,declare可以不写。

尽管AS相当于是declare,但是它不可以省略。



查看程序包的时候。IN是输入参数,OUT是输出参数。


调用存储过程的程序才提交事务,保证了所有的操作是同一个事务。



oracle sql developer可以编写程序,也可以调试和运行程序。不建议远程调试。需要指定调试的端口才可以进行调试。建议把oracle sql developer拷贝到数据库所在的服务器上。

本机调试就比较方便。

用系统管理员进行授权,授权用户SCOTT调试存储过程。

卧槽,调试也是会改变数据的喔。

调试就是把这个存储过程执行一遍。

编译一次不允许重复编译存储过程。


存储函数必须有一个return语句返回函数的值。

存储函数可以有一个返回值。存储过程没有。



当有了out参数,存储过程和存储函数,哪一个就可以不要了?

存储函数就可以不要了。存储过程可以有返回值也可以没有返回值。存储函数完全可以用带out参数的存储过程来替代。为什么oracle依然保留了存储函数?多余了可以不要了,不支持了。不可以。因为实际上这个问题不是一个技术的问题,是一个历史问题。oracle最早的版本有存储过程和存储函数,后来随着版本的升级,向下兼容,新的版本要兼容老的版本。如果新的版本不支持存储函数,老的版本有存储函数就用不起来了。为了做到向前和向下兼容。


Hadoop版本的兼容性做的不好,Hadoop1.0上做了一个系统在Hadoop2.0上不能跑起来,向前兼容。版本的兼容性做的不好。版本升级的时候要做到向前和向下兼容。


最新文章

  1. sqlmap和burpsuite绕过csrf token进行SQL注入检测
  2. Python 文件操作函数
  3. UWP入门教程1——UWP的前世今生
  4. Atitit 面向对象弊端与问题 坏处 缺点
  5. RGui的http代理设置
  6. pthread clean up
  7. Socket编程(九)
  8. 作为平台的Windows PowerShell(二)
  9. 浏览器兼容console对象的简要解决方案
  10. Download SymmetricDS Data Sync Software for Free
  11. 查看.a架构文件
  12. linux下http服务器开发
  13. Hibernate开发文档
  14. qsv文件转码mp4格式过程记录
  15. webapi读取上传的文件流
  16. windows应用程序框架及实例
  17. golang操作memcached 转自https://blog.csdn.net/weixin_37696997/article/details/78760397
  18. P2347 砝码称重-DP方案数-bitset
  19. Windows 窗体设计器生成的代码
  20. JavaBasic_01

热门文章

  1. Left Join ,On Where
  2. 【WCF】利用WCF实现上传下载文件服务
  3. [1]移动端页面调试之“weinre大法”
  4. AOP注解式拦截
  5. hdoj-1715-大菲波数(大斐波那契数列)
  6. nyoj-253-LK的旅行(Graham算法和旋转卡壳)
  7. rpy2的安装问题?【解决】
  8. Mycat 在vscode中的开发配置
  9. MMS(mongodb监控工具)
  10. [转]【鹅厂网事】全局精确流量调度新思路-HttpDNS服务详解