我的Microsoft SQL Server数据库中有一个tbl_order
表,我需要导出位于已授予写许可权的文件夹中的.csv文件中的某些字段。
我写了一段代码,我认为它看起来不错,但是即使当前要导出的行只有两个,也会导致超时错误。
我想知道我哪里写错了,因为脚本非常简单,我一定做错了什么。
Set objRS2 = Server.CreateObject("Scripting.FileSystemObject")
Set ctf = objRS2.CreateTextFile(Server.MapPath("../order/test.csv"), 2)
sql2 = "SELECT agent, dealer, data FROM tbl_order where active = 'True'"
objRS2.Open sql2, ConString
If Not objRS2.EOF Then
ctf.WriteLine("agent,dealer,data")
While Not objRS2.EOF
ctf.WriteLine(""""&(rset1.Fields("agent").Value)&""" ,"""&(rset1.Fields("dealer").Value)&""","""&(rset1.Fields("data").Value)&"""")
objRS2.MoveNext
Wend
End If
ctf.Close
ClearRS(objRS2)
答案 0 :(得分:3)
您正在命名文件系统对象objRS2
,并试图将其用作数据库记录集。我将其命名为objFSO
,以使其清楚是文件系统对象而不是记录集。
您将需要使用其他名称(例如rs
)创建一个记录集。您可以在使用之前创建数据库记录集,如下所示:
set rs = Server.CreateObject("ADODB.recordset")