基础不好,问大家几个问题,希望帮忙
代码规范和局部变量的重名问题
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
如果你只能看到其中的一半,比如关闭释放那一半,你不感觉有点怪怪的?