MSSQLÖÐÖ´ÐмÆËãʽ»ñµÃ¼ÆËãÖµ

2014-11-24 09:52:46 ¡¤ ×÷Õß: ¡¤ ä¯ÀÀ: 0

MSSQLÖÐÖ´ÐмÆËãʽ»ñµÃ¼ÆËãÖµ
×î½üÒ»¸öͬÊÂÎÊÎÒÕâÊ£¬ÏëÆð2009ÄêдµÄÒ»¸ö´¦Àíº¯Êý£¬
дÕâ¸öº¯ÊýµÄʱºòÒ²²Î¿¼ÁËÍøÂçÉϵÄÐÅÏ¢£¬ÔÚ´Ë×ö¸ö±¸¿¼
[sql]
/****** ¥ª¥Ö¥¸¥§¥¯¥È: UserDefinedFunction [dbo].[F_ComputeUnitProductAmount] ¥¹¥¯¥ê¥×¥ÈÈÕ¸¶: 09/13/2012 14:26:43 ******/
SET ANSI_NULLS ON
GO www.2cto.com
SET QUOTED_IDENTIFIER OFF
GO
/* Êý¸ÅÒª-------------------------------------------------------
Êý Ã÷ £º Ë㹫ʽ¤Ë¤è¤Ã¤Æ¡¢ ¹û¤ò¤â¤é¤¤¤Þ¤¹
×÷³ÉÕß £ºÍõ ÊÙ(¥Í¥Ã¥È¥ï ¥¯¤Ë²Î¿¼¤·¤Þ¤¹)
×÷³ÉÈÕ¸¶ £º2009/06/04
Àý¤¨¤Ð £ºSELECT dbo.F_ComputeUnitProductAmount('5+(4*3)^2+10/2')
----------------------------------------------------------------*/
/*---------------------------------------------------------------
ÐÞÕýÈÕ¸¶ £º2009/07/02
ÐÞÕýÕß £ºÍõ ÊÙ
ÐÞÕýÄÚÈÝ £ºOLEDB Ïó¤ò ·Å¤¹¤ë
----------------------------------------------------------------*/
CREATE FUNCTION [dbo].[F_ComputeUnitProductAmount]
( www.2cto.com
@str varchar(1000)-- ËãÓù«Ê½
)
RETURNS sql_variant -----¤â¤·SUM(),AVG()¤Ê¤É Ëã¤Î ¡¢INT¤Ë ¤¹¤ë
-----------------------------------------------------------------
AS
-----------------------------------------------------------------
begin
declare @re sql_variant
declare @err int,
@src varchar(255)
,@desc varchar(255)
,@hr int
declare @obj int
exec @err=sp_oacreate 'MSScriptControl.ScriptControl',@obj out
if @err<>0 goto lb_err
exec @err=sp_oasetproperty @obj,'Language','vbscript'
if @err<>0 goto lb_err
www.2cto.com
exec @err=sp_oamethod @obj,'eva l',@re out,@str
exec @err=sp_oadestroy @obj---2009/07/02×·¼Ó---¤Ê¤±¤ì¤Ð¡¢256ÐФÀ¤±¤ò ÐФ¹¤ë
if @err=0 return(@re)
lb_err:
return(0)
end