首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > ASP >

基础不好,问大家几个小问题,希望帮忙

2012-02-11 
基础不好,问大家几个问题,希望帮忙代码规范和局部变量的重名问题1.如何定义文件Function.asp用来打开记录

基础不好,问大家几个问题,希望帮忙
代码规范和局部变量的重名问题
1.如何定义
文件   Function.asp
用来打开记录集合的函数
<%
Function   OpenRs(sql,read)
Set   Rs=Server.CreateObject( "Adodb.Recordset ")
If   read=1   then
Rs.Open   sql,Conn,1,1
Else   If   read   =   0   Then
Rs.Open   Sql,Conn,1,3
End   If
End   If
End   Function
%>
在show.asp文件调用   conn.asp和function.asp
打开记录集合
show.asp文件内容:
<%dim   rs
Call     RsOpen( "Select   *   From   news ",1)%>

提示Microsoft   VBScript   运行时错误   (0x800A000D)
类型不匹配:   'RsOpen '

请问为什么会出现这种情况?


2.
在这个函数里   如何规范的写代码,保证代码的效率
参数需不需要重新定义  
如写成
<%
Function   OpenRs(sql,read)
dim   sqlTemp,readTemp,Rs
readTemp=read
sqlTemp=sql
............
End   Function
%>
3.如果在函数中出现dim   rs  
在函数外部也出现了   dim   rs  
这样会不会提示重名?  


如有参考文章   请告诉地址   谢谢




[解决办法]
1、Function OpenRs() 后边使用时却写了 RsOpen( 前后不一致,当然出错
[解决办法]
当open和close不成对出现的时候,代码可读性怎么样?
而且你连创建recordset对象都在函数内部,难道你还专门写一个函数把它释放掉?

一般来说
Set conn = Server.CreateObject( "ADODB.Connection ")
conn.Open ......
Set Rs=Server.CreateObject( "Adodb.Recordset ")
Rs.Open ......

Rs.Close
Set Rs = Nothing
conn.Close
Set conn = Nothing

如果你只能看到其中的一半,比如关闭释放那一半,你不感觉有点怪怪的?

热点排行