请帮忙看下这段自定义函数如何实现

来源:百度知道 编辑:UC知道 时间:2024/05/06 20:05:47
我想写一个数据库调用函数,但是研究了一段时间还是没有摸索出很清晰的思路。请高手指教

函数我已经定义好一个了,但是好象不行。不知道是什么原因。

代码如下:
<%
'================================================
' 函数名:CallsDatabase
' 作 用:调用数据库库
' 参 数:Numbers ----显示前几条
' Word ----字段
' DataName ----表名
' Where ----查询条件
' OrderRequire ----排列要求
' Order ----排列顺序
'select top 6 * from proclamation order by id desc
'================================================
Function CallsDatabase(Numbers,Word,DataName,Where,OrderRequire,Order)
Dim Data
Data = "rs.open "
Data = Data & """select "
if Numbers <> "0" then
Data = Data & "top " & Numbers
else
Data = Data
end if
if Word <> "" then
Data = Data & " " & Word
else
Data = Data & " * "
end if
Data = Data & "

你的函数完全都是字符串在住一块连,连接字符串,sql语句可以这样处理,但方法如 set conn=...,conn.open...,rs.open是不能当做字符串的.

以下是一个vb中连接数据库,打开记录集的例子:
两个函数分别返回了连接(Connection)和记录集(recordset).
Private Sub Command1_Click()
Dim mydb As ADODB.Connection
Dim myrs As ADODB.Recordset
Set mydb = getdb("C:\Program Files\Microsoft Visual Studio\VB98\BIBLIO.MDB")
Set myrs = getrs("select * from Authors", mydb)
Print myrs.RecordCount
End Sub

Private Function getdb(dbname) As ADODB.Connection
Set getdb = New Connection
getdb.Open "PROVIDER=Microsoft.Jet.OLEDB.3.51;Data Source=" & dbname & ";"
End Function

Private Function getrs(sql As String, conn As ADODB.Connection) As ADODB.Recordset
Set getrs = New ADODB.Recordset
getrs.Open sql, conn, 1, 3
End Function