首页 新闻 会员 周边

ASP中如何调用SQL自定义函数

0
悬赏园豆:20 [已解决问题] 解决于 2009-03-13 16:45

再ASP程序中如何调用SQL自定义函数呢?

这是我的调用方法,麻烦各位给指点一下

<%
Dim connectionText,connections,cmdTemp,rst

  connectionText="你好<script"
  Set conn = Server.CreateObject("ADODB.Connection")
  connections = "driver={SQL Server};server=.;uid=sa;pwd=;database=luntandb"
  conn.open connections  

  Set cmdTemp=Server.CreateObject("ADODB.Command")
  Set rst=Server.CreateObject("ADODB.Recordset") 
  cmdTemp.commandText = "dbo.HtmlEncode"        '自定义函数名称
  cmdTemp.CommandType = 4  
  Set cmdTemp.ActiveConnection = conn 
  cmdTemp("@contentText") = connectionText
  cmdTemp.execute()  
  rv =cmdTemp("@return_value")   
  response.Write(rv)
%>

这是SQL自定义函数-- =============================================
-- Author:  <Author,,Name>
-- Create date: <Create Date, ,>
-- Description: <Description, ,>
-- =============================================
ALTER FUNCTION [dbo].[HtmlEncode]
(
 @contentText varchar(5000)
)
RETURNS varchar(5000)
AS
BEGIN

SET @contentText = REPLACE(@contentText,'<script','&lt;script');
SET @contentText = REPLACE(@contentText,'<link','&lt;link');
SET @contentText = REPLACE(@contentText,'<ifream','&lt;ifream');
SET @contentText = REPLACE(@contentText,'<style','&lt;style');
SET @contentText = REPLACE(@contentText,'url(','url(');
RETURN @contentText
END

问题补充: 刚才修改了一下,用SQL语句调用,现在改成这样 Dim str,ContentText Set conn = Server.CreateObject("ADODB.Connection") connections = "driver={SQL Server};server=.;uid=sa;pwd=;database=luntandb" conn.open connections ContentText="测试测试测试<script>alert('测试')</script>" Set rst=Server.CreateObject("ADODB.Recordset") str="select dbo.HtmlEncode('"&ContentText&"')" rst.open str,conn,1,1 response.Write(rst(0)) %> 另外 rst.open str,conn,1,1 后面那个 1,1代表什么意思呢?
静夜品茗的主页 静夜品茗 | 初学一级 | 园豆:155
提问于:2009-03-13 13:52
< >
分享
最佳答案
0

asp不支持sql语句么???关注下!如果支持的话可以把sql语句方法写到ASP中!

子夜星辰 | 小虾三级 |园豆:1613 | 2009-03-13 14:45
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册