科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道解析:教你轻松掌握如何扩展存储过程构架

解析:教你轻松掌握如何扩展存储过程构架

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

SQL Server 2000 扩展存储过程使您能够在动态链接库文件所包含的函数中实现逻辑,扩展了Transact-SQL 的功能,并且可以象调用 Transact-SQL 过程那样从Transact-SQL 语句调用这些函数。

作者:赛迪网 yashi 来源:天新网 2008年3月27日

关键字: Mssql SQL SQL Server 数据库

  • 评论
  • 分享微博
  • 分享邮件

Microsoft® SQL Server™ 2000 扩展存储过程使您能够在动态链接库 (DLL) 文件所包含的函数中实现逻辑,从而扩展了 Transact-SQL 的功能,并且可以象调用 Transact-SQL 过程那样从 Transact-SQL 语句调用这些函数。动态链接库文件的文件扩展名为 .dll。扩展存储过程可以包括 Microsoft Win32® 和 COM 应用程序的大多数功能。

DLL 文件必须遵从扩展存储过程 API 才能作为扩展存储过程运行。对于 SQL Server,.dll 可以包含多个标识为扩展存储过程的函数;每个函数都由单独的扩展存储过程名标识。当 Transact-SQL 语句引用其中一个扩展存储过程时,关系数据库引擎调用与该扩展存储过程名相关联的函数。扩展存储过程可以与调用它们的 SQL Server 实例重新建立连接,或者连接到远程 SQL Server 安装。

扩展存储过程是关系数据库引擎的开放式数据服务层的一部分,而开放式数据服务层是该引擎和服务器 Net-library 之间的接口。服务器 Net-Library 接收客户端 TDS 数据包并将它们传递给开放式数据服务。开放式数据服务将 TDS 数据包转换成事件并传递到关系数据库引擎的其它部分。数据库引擎然后使用开放式数据服务,通过服务器 Net-Library 将回复发送回 SQL Server 客户端。

当关系数据库引擎确定 Transact-SQL 语句引用扩展存储过程时:

◆关系数据库引擎将扩展存储过程请求传递到开放式数据服务层。

◆然后开放式数据服务将包含扩展存储过程函数的 DLL 装载到 SQL Server 2000 地址空间(如果还没有装载)。

◆开放式数据服务将请求传递到扩展存储过程。

◆开放式数据服务将操作结果传递到数据库引擎。

过去,还使用开放式数据服务 API 编写服务器应用程序,例如连接到其它数据库系统的网关。这种应用程序已被更新的技术取代,这些技术包括:

◆支持多个不同的数据库和其它数据源(如 OLE DB 和 ODBC)的数据库API。

写入 OLE DB 或 ODBC API 的应用程序几乎不需要通过网关访问不同的数据库。

◆SQL Server 2000 支持异类分布式查询,使得 Transact-SQL 查询不必使用专门的服务器应用程序就能从任何 OLE DB 数据源中拉出数据。

◆MS DTC 使分布式事务处理得以跨越多个数据库进行。

◆Windows NT 组件服务,用于运行中层应用程序逻辑。

SQL Server 2000 不支持开放式数据服务 API 的废弃部分。对于原始的开放式数据服务 API,SQL Server 2000 仍支持的唯一部分是扩展存储过程,因此已将 API 重命名为扩展存储过程 API。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章