|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
因此我们的方案中要构造这种逆操作。Event_type增加一种FlashBACK_EVENT。这类操作形式与Query_Event相同,都是简单的SQL语句,只是包含了将数据恢复的操作。server
创建用户自界说函数,能够自在的在一个TransactionSQL中间接利用,就像一个体系函数一样在你的查询语句中
间接利用。
CREATEFUNCTION
语法
CREATEFUNCTION[owner_name.]function_name
([{@parameter_name[AS]scalar_parameter_data_type[=default]}[,...n]])
RETURNSscalar_return_data_type
[WITH<function_option>[[,]...n]]
[AS]
BEGIN
function_body
RETURNscalar_expression
END
InlineTable-valuedFunctions
CREATEFUNCTION[owner_name.]function_name
([{@parameter_name[AS]scalar_parameter_data_type[=default]}[,...n]])
RETURNSTABLE
[WITH<function_option>[[,]...n]]
[AS]
RETURN[(]select-stmt[)]
Multi-statementTable-valuedFunctions
CREATEFUNCTION[owner_name.]function_name
([{@parameter_name[AS]scalar_parameter_data_type[=default]}[,...n]])
RETURNS@return_variableTABLE<table_type_definition>
[WITH<function_option>[[,]...n]]
[AS]
BEGIN
function_body
RETURN
END
<function_option>::=
{ENCRYPTION|SCHEMABINDING}
<table_type_definition>::=
({column_definition|table_constraint}[,...n])
示例
--创立函数
createfunctiongetValue()
returnsint
as
begin
return(selectconvert(int,Value)ASValuefromTestwhere[Name]=Test)
end
go
select*fromTest2whereValue=dbo.getValue()
go
createfunctiongetTabletest(@t1datetime,@t2datetime)
returnstable
as
return(selectt1.Field1,t2.Field1,t2.Qty,t3.Field1,t3.Field1
fromTable1t1innerjoinTable2t2ont1.ID=t2.IDinnerjoinTable3t3ont2.JID=t3.JIDwheret1.Date>=@t1andt1.Date<@t2)
go
select*fromdbo.getTabletest(1999/1/1,2001/2/1)
根据Ambrose所说,Sakila来自一种叫SiSwati的斯威士兰方言,也是在Ambrose的家乡乌干达附近的坦桑尼亚的Arusha的一个小镇的名字。 |
|