www.3112.net > mysql 与orAClE中的存储过程及函数有什么区别,尽可能详细哦

mysql 与orAClE中的存储过程及函数有什么区别,尽可能详细哦

问和比较笼统.除了存储过程和函数头部定义不同.可以使用的系统函数也不同.

首先是大体一致的,只是分页查询时oracle用的伪列(rownum),mysql用的是limit,具体的可以百度一下分页;另外oracle对sql语句要求更为严格,而且oracle里变量较mysql更多点,oracle中有number型,有大数据类型,mysql没得;另外举个

mysql 存储过程和函数的区别1、 存储过程实现的功能要复杂一点,函数实现的功能针对性比较强.存储过程,功能强大,可以执行包括修改表等一系列数据库操作;用户定义函数不能用于执行一组修改全局数据库状态的操作.2、 对于存储过

过程:函数和存储过程的统称.函数:有且仅有一个返回值,可以用于SQL语句中. 如:x := get_X(),select get_X() from dual,返回值为函数调用的结果.存储过程:无返回值.要返回结果,必须声明为out参数. 如:sp_x(x,y,z),x和y为in类型参数,z为out/in out类型参数.在oracle中,封装工具还有自定义类型、包等.包可以封装过程和函数,包头类似JAVA中的接口,包体类似JAVA中实现接口的类.

存储函数和存储过程统称为存储例程(stored routine).两者的定义语法很相似,但却是不同的内容.存储函数限制比较多,比如不能用临时表,只能用表变量.还有一些函数都不可用等等.而存储过程的限制相对就比较少.一般来说,存储过

函数和存储过程的区别从参数的返回情况来看:如果返回多个参数值最好使用存储过程,如果只有一个返回值的话可以使用函数;从调用情况来看:如果在sql语句(dml或select)中调用的话一定是存储函数或存储的封装函数不可以是存储过程,但调用存储函数的时候还有好多限制以及函数的纯度等级的问题,你可以参考《oracle9ipl\sql程序设计》(机械工业出版社);如果是在过程化语句中调用的话,就要看你要实现什么样的功能.函数一般情况下是用来计算并返回一个计算结果而存储过程一般是用来完成特定的数据操作(比如修改、插入数据库表或执行某些ddl语句等等),所以虽然他们的语法上很相似但用户在使用他们的时候所需要完成的功能大部分情况下是不同的.

函数就是函数,跟你用的oracle 内置函数是一样的,带参数或者不带参数,返回一个结果创建语句 create or replace funtion (……)存储过程一边是处理比较复杂的处理逻辑或者机械化调用等创建语句 CREATE OR REPLACE PROCEDURE(……)他俩是不同的东西,存储可以调用函数,

函数是返回一个值,如0、1之类,需要在里面有return值;过程是返回结果集,如select * from tableA;存储过程里面可以调用函数.

1、函数必须指定返回值,且参数默认为IN类型.2、存储过程没返回值,参数可以是 IN,OUT,IN OUT类型,有的人可能会理解成OUT 也算是返回值.3、调用方式:函数 select my_fun() ;过程 call my_pro( ) ;4、DEMODELIMITER $$DROP

1)一般来说,存储过程实现的功能要复杂一点,而函数的实现的功能针对性比较强.存储过程,功能强大,可以执行包括修改表等一系列数据库操作;用户定义函数不能用于执行一组修改全局数据库状态的操作. 2)对于存储过程来说可以返回参数,如记录集,而函数只能返回值或者表对象.函数只能返回一个变量;而存储过程可以返回多个.存储过程的参数可以有IN,OUT,INOUT三种类型,而函数只能有IN类~~存储过程声明时不需要返回类型,而函数声明时需要描述返回类型,且函数体中必须包含一个有效的RETURN语句. 3)存储过程,可以使用非确定函数,不允许在用户定义函数主体中内置非确定函数.

网站地图

All rights reserved Powered by www.3112.net

copyright ©right 2010-2021。
www.3112.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com