sql server 的 t-sql 语言的功能是 非常的强大,但是有个时候 也确实是有些限制和不方便,一天,豆腐想为什么不象 asp 一样 大量的借用组件呢? 说干就干,我这就 开始在 sql online book 中查找,呵呵终于找到了 一个 sql 的 系统存储过程 sp_oacreate,下面大家就和豆腐一起去看看这个存储过程的神气之处吧
首先我们先用vb 作一个最简单的组件 ,因为是介绍性的文章,所以这个组件是非常的的简单,在具体的工作中,可以写个比这个业务复杂的多的组件
project name: testsqlcom
class name: testmath
public function addme(a as long, b as long) as long
addme = a + b
end function
编译生成后,我们就可以在 sql server 中对这个 com 组件进行调用了
declare @i int
declare @intret int
declare @intretcode int
declare @strerr varchar (255)
declare @strerr1 varchar (255)
/* 首先创建com 实例 */
exec @ret_code = sp_oacreate "testsqlcom.testmath", @i out
if @intretcode <> 0
begin
/* 创建实例 失败 */
exec sp_oageterrorinfo @i, @strerr out, @strerr1 out
print "创建实例失败,失败的原因是:: " + @strerr + " " + @strerr1
return
end
/* 创建成功,开始调用 */
exec @intretcode = sp_oamethod @i,'addme',@ret out,100,200
if @intretcode <> 0
begin
/* 调用方法出错 */
exec sp_oageterrorinfo @i, @strerr out, @strerr1 out
print "调用方法失败,失败的原因是:: " + @strerr + " " + @strerr1
exec sp_oadestroy @i
return
end
print "返回的结果是" + str(@intret)
exec sp_oadestroy @i
以前是存储过程的输出
step 4:
返回的结果是 300
我们在这篇文章中介绍了在 sql server 中使用 组件的方法,具体的 帮助 大家 请查看 sql onlone book
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器