1、表值函数:用户定义表值函数返回 table 数据类型。对于内联表值函数,没有函数主体;表是单个 SELECT 语句的结果集。 2、标量函数:标量函数返回一个确定类型的标量值。其返回值类型为除TEXT、NTEXT 、IMAGE、CURSOR、 TIMESTAMP 和TABLE 类型外的其它数据类型。函数体语句定义在BEGIN-END语句内,其中包含了可以返回值的Transact-SQL 命令。 3、存储过程:存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。功能强大,限制少,不能直接引用返回值,用select语句返回记录集 内联表值函数,标量函数均为用户自定义函数 诸多限制,有许多语句不能使用,许多功能不能实现,可以直接引用返回值,用表变量返回记录集。其中用户定义函数的定义是这样的: Microsoft SQL Server 2000 允许创建用户定义函数。与任何函数一样,用户定义函数是可返回值的例程。根据所返回值的类型,每个用户定义函数可分成以下三个类别: 1、返回可更新数据表的函数 如果用户定义函数包含单个 SELECT 语句且该语句可更新,则该函数返回的表格格式结果也可以更新。 2、返回不可更新数据表的函数 如果用户定义函数包含不止一个 SELECT 语句,或包含一个不可更新的 SELECT 语句,则该函数返回的表格格式结果也不可更新。 3、返回标量值的函数 用户定义函数可以返回标量值。
数据库表值函数和标量函数和存储过程之间的区别【鸡蛋】
最新推荐文章于 2023-05-14 14:24:25 发布