当前位置:首页 » 参考文献 » 数据库过程函数

数据库过程函数

发布时间: 2021-03-20 05:48:45

数据库中的自定义函数与存储过程的区别,讲得简单点,不要太多的术语,

存储过程:

存储过程可以使得对数据库的管理、以及显示关于数据库及其用户信息的工作容易得多。存储过程是 SQL 语句和可选控制流语句的预编译集合,以一个名称存储并作为一个单元处理。存储过程存储在数据库内,可由应用程序通过一个调用执行,而且允许用户声明变量、有条件执行以及其它强大的编程功能。
存储过程可包含程序流、逻辑以及对数据库的查询。它们可以接受参数、输出参数、返回单个或多个结果集以及返回值。

可以出于任何使用 SQL 语句的目的来使用存储过程,它具有以下优点:

1、可以在单个存储过程中执行一系列 SQL 语句。
2、可以从自己的存储过程内引用其它存储过程,这可以简化一系列复杂语句。

3、存储过程在创建时即在服务器上进行编译,所以执行起来比单个 SQL 语句快。

用户定义函数:

Microsoft SQL Server 2000 允许创建用户定义函数。与任何函数一样,用户定义函数是可返回值的例程。根据所返回值的类型,每个用户定义函数可分成以下三个类别:

1、返回可更新数据表的函数:如果用户定义函数包含单个 Select 语句且该语句可更新,则该函数返回的表格格式结果也可以更新。

2、返回不可更新数据表的函数:如果用户定义函数包含不止一个 Select 语句,或包含一个不可更新的 Select 语句,则该函数返回的表格格式结果也不可更新。

3、返回标量值的函数:用户定义函数可以返回标量值。

存储过程

1. 功能强大,限制少
2. 不能直接引用返回值
3. 用select语句返回记录集

自定义函数

1. 诸多限制,有许多语句不能使用,许多功能不能实现
2. 可以直接引用返回值
3. 用表变量返回记录集

② 数据库中存储过程和函数的区别是什么用自己的话回答。

存储过程:可以进行增删查改dml操作,甚至可以进行建表等ddl操作;不能return返回值内,可以容用out参数返回值。用exec 过程名 的方法调用。
函数,可以return返回值;一般来说,只能进行select操作,不能进行增删改,也不能进行ddl操作。可以通过赋值的方式调用,也可以在sql语句中使用。

③ SQL的函数和过程正确的描述是

SQL允许定义函数、过程和方法。定义可通过SQL的有关过程的组件,也可以通过外部的程序设计语言,如Java,C或C++。SQL标准所定义的语法,与大多数数据库实现的自身的非标准版本的语法不同。函数和过程允许“业务逻辑”作为存储过程记录在数据库中,并在数据库中执行。

业务逻辑能够被写成程序设计语言过程并完全存储在数据库之外,但把它们定义成数据库中的存储过程有几个优点:

1 允许多个应用访问这些过程。

2.允许当业务规则发生改变时进行单个点的改变,而不变改变应用系统的其他部分。

3.应用代码可以调用存储过程,而不是直接更新数据库关系。

具体操作如下:

1. 声明方式。

在begin……end之间的语句可以执行signal out_of_classrome_seats来引发异常。这个句柄说明如果条件发生,将会采取动作终止begin end中的语句。另一个可选的动作是continue,它继续从引发异常的语句的下一条语句开始执行。

    ④ 数据库存储过程、函数、触发器的区别是什么

    三者差别:

    1、存储过程实现的功能要复杂一点,而函数实现的功能针对性比较强。;

    2、存储过程一般是作为一个独立的部分来执行,而函数可以作为查询语句的一个部分来调用;

    3、触发器是特殊的存储过程,存储过程需要程序调用,而触发器会自动执行。

    分别含义:

    1、存储过程的特点

    ①存储过程只在创建时进行编译,以后执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。

    ② 当对数据库进行复杂操作时(如对多个表进行Update、Insert、Query、Delete时),可将此复杂操作用存储过程封装起来。

    ③可以在过程中调用另一个存储过程。可以在存储过程中调用函数。这可以简化一系列复杂语句。

    ④ 安全性高,可设定只有某用户才具有对指定存储过程的使用权。

    ⑤参数有三种(IN、OUT、IN OUT),可返回多个参数值。

    ⑥在ORACLE中,若干个有联系的过程可以组合在一起构成程序包。

    ⑦存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程。

    2、函数的特点

    ①函数只有一种参数(IN),只有一条RETURN语句,只能返回单一的值。

    ②可在SQL语句(DML或SELECT)中调用函数。由于函数可以返回一个表对象,因此它可以在查询语句中位于FROM关键字的后面。

    3、触发器的特点

    触发器是特殊的存储过程,存储过程需要程序调用,而触发器会自动执行。

    ⑤ 数据库中存储过程和函数有什么区别

    自定义函数
    有且只有一个返回值,就像普通的函数一样,可以直接在表达式中嵌入调用。
    存储过程
    可以没有返回值,也可以有任意个输出参数,必须单独调用。

    ⑥ 数据库存储过程、函数、触发器的区别

    存储过程和函数的区别:
    1. 一般来说,存储过程实现的功能要复杂一点,而函数的实现的功能针对性比较强。
    2. 对于存储过程来说可以返回参数,而函数只能返回值或者表对象。
    3. 存储过程一般是作为一个独立的部分来执行,而函数可以作为查询语句的一个部分来调用,由于函数可以返回一个表对象,因此它可以在查询语句中位于FROM关键字的后面。
    4. 当存储过程和函数被执行的时候,SQL Manager会到procere cache中去取相应的查询语句,如果在procere cache里没有相应的查询语句,SQL Manager就会对存储过程和函数进行编译。
    Procere cache中保存的是执行计划 (execution plan) ,当编译好之后就执行procere cache中的execution plan,之后SQL SERVER会根据每个execution plan的实际情况来考虑是否要在cache中保存这个plan,评判的标准一个是这个execution plan可能被使用的频率;其次是生成这个plan的代价,也就是编译的耗时。保存在cache中的plan在下次执行时就不用再编译了。
    触发器、存储过程和函数三者有何区别:
    触发器是特殊的存储过程,存储过程需要程序调用,而触发器会自动执行;
    在什么时候用触发器?要求系统根据某些操作自动完成相关任务。
    什么时候用存储过程?
    存储过程就是程序,它是经过语法检查和编译的SQL语句,所以运行特别快。
    存储过程和用户自定义函数具体的区别
    先看定义: 存储过程存储过程可以使得对数据库的管理、以及显示关于数据库及其用户信息的工作容易得多。存储过程是 SQL 语句和可选控制流语句的预编译集合,以一个名称存储并作为一个单元处理。
    存储过程存储在数据库内,可由应用程序通过一个调用执行,而且允许用户声明变量、有条件执行以及其它强大的编程功能。存储过程可包含程序流、逻辑以及对数据库的查询。它们可以接受参数、输出参数、返回单个或多个结果集以及返回值。 可以出于任何使用 SQL 语句的目的来使用存储过程,它具有以下优点: 可以在单个存储过程中。

    ⑦ 存储过程和函数的区别

    一、含义不同

    1、存储过程:存储过程是 SQL 语句和可选控制流语句的预编译集合,以一个名称存储并作为一个单元处理。

    2、函数:是由一个或多个 SQL 语句组成的子程序,可用于封装代码以便重新使用。函数限制比较多,如不能用临时表,只能用表变量等

    二、使用条件不同

    1、存储过程:可以在单个存储过程中执行一系列 SQL 语句。而且可以从自己的存储过程内引用其它存储过程,这可以简化一系列复杂语句。

    2、函数:自定义函数诸多限制,有许多语句不能使用,许多功能不能实现。函数可以直接引用返回值,用表变量返回记录集。但是,用户定义函数不能用于执行一组修改全局数据库状态的操作。

    三、执行方式不同

    1、存储过程:存储过程可以返回参数,如记录集,函数只能返回值或者表对象。存储过程的参数有in,out,inout三种,存储过程声明时不需要返回类型。

    2、函数:函数参数只有in,而函数需要描述返回类型,且函数中必须包含一个有效的return语句。

    ⑧ 数据库存储过程和函数的区别

    函数分两种,表值函数跟标量函数
    表值函数最后要返回一个表变量,而标量函数最后要返回一个标量值
    存储过程即一组批处理,可以返回或不返回值,仅仅是执行其内部的全部语句
    函数可以与一般sql语句一同编写,而存储过程不可以,需要单独执行

    ⑨ sql数据库的存储过程的函数问题

    1)自定义函数中不能调用存储过程,如果调用了,函数可以顺利创建,但是调用函数会出错
    2)自定义函数中不能创建表,删除表,插入表数据
    解决办法:
    可以先把存储过程返回的结果插入到临时表,然后在函数里调用临时表,或者运用内置函数,或者使用复杂的联合查询实现想要的结果

    ⑩ 数据库 过程实现与函数实现有什么区别

    过程没有返回,函数有返回可以多次调用。

    热点内容
    涂鸦论文 发布:2021-03-31 13:04:48 浏览:698
    手机数据库应用 发布:2021-03-31 13:04:28 浏览:353
    版面217 发布:2021-03-31 13:04:18 浏览:587
    知网不查的资源 发布:2021-03-31 13:03:43 浏览:713
    基金赎回参考 发布:2021-03-31 13:02:08 浏览:489
    悬疑故事范文 发布:2021-03-31 13:02:07 浏览:87
    做简单的自我介绍范文 发布:2021-03-31 13:01:48 浏览:537
    战略地图参考 发布:2021-03-31 13:01:09 浏览:463
    收支模板 发布:2021-03-31 13:00:43 浏览:17
    电气学术会议 发布:2021-03-31 13:00:32 浏览:731