12
返回列表 发新帖
楼主: ambassador

我的登陆用户为A.调用函数,存储过程为什么都要加dbo.getlabel();

[复制链接]
论坛徽章:
22
授权会员
日期:2005-10-30 17:05:332012新春纪念徽章
日期:2012-02-13 15:11:362012新春纪念徽章
日期:2012-02-13 15:11:362012新春纪念徽章
日期:2012-02-13 15:11:362012新春纪念徽章
日期:2012-02-13 15:11:36马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:11:36
11#
发表于 2003-11-28 17:46 | 只看该作者
最初由 xzh2000 发布
[B]

        過程與函數是有區別的﹐因為用法都不一樣﹐形式與語法也有很多的不同﹐更主要的是作用都不一樣。
        一樣來說sa帳號的dbo是不用授權的﹐但在訪問函數時卻不然﹐我一向在開發中就用sa帳號與dbo用戶﹐但必須加dbo.f_test [/B]


呵呵,从根本上来看,过程和函数功能是一样的,当然他们形式、語法、用法等表面的定义是不一样的。我想,从底层看,过程都是可以用函数来表示的。这些思想主要来自于编译原理和c语言。

对于sqlserver自定义函数我再研究一下,毕竟以前用的不多。我想自己总结一下。

你说的函数都要加上dbo前缀,看看下面内嵌用户定义函数:

CREATE FUNCTION fn_CustomerNamesInRegion
                 ( @RegionParameter nvarchar(30) )
RETURNS table
AS
RETURN (
        SELECT CustomerID, CompanyName
        FROM Northwind.dbo.Customers
        WHERE Region = @RegionParameter
       )
GO
-- Example of calling the function for a specific region
SELECT *
FROM fn_CustomerNamesInRegion(N'WA')
GO

使用道具 举报

回复
论坛徽章:
22
授权会员
日期:2005-10-30 17:05:332012新春纪念徽章
日期:2012-02-13 15:11:362012新春纪念徽章
日期:2012-02-13 15:11:362012新春纪念徽章
日期:2012-02-13 15:11:362012新春纪念徽章
日期:2012-02-13 15:11:36马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:11:36
12#
发表于 2003-11-28 17:49 | 只看该作者
最初由 ambassador 发布
[B]grant exec on get_label to informix
select get_label()
报错:服务器: 消息 195,级别 15,状态 10,行 1
'get_label' 不是可以识别的 函数名。

select dbo.get_label('a','b')就可以了 [/B]


那你先这样用吧,对于procedure是可以这样的。我再研究一下,给出个说法。

不好意思。

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表