在经典ASP中将数据库数据导出到CSV

时间:2019-07-03 09:04:27

标签: sql-server asp-classic export export-to-csv filesystemobject

我的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)

1 个答案:

答案 0 :(得分:3)

您正在命名文件系统对象objRS2,并试图将其用作数据库记录集。我将其命名为objFSO,以使其清楚是文件系统对象而不是记录集。

您将需要使用其他名称(例如rs)创建一个记录集。您可以在使用之前创建数据库记录集,如下所示:

set rs = Server.CreateObject("ADODB.recordset")