正确的大查询在 ASP Classic 中不起作用?

Correct big query doesn't work in ASP Classic?

我正在尝试用 SQL 服务器数据库中的记录在 ASP CLASSIC 中制作一个 table。 程序中生成的查询是正确的,在 SQL server management studio 中执行有效,但是当我将此查询粘贴到 asp 经典 Web 代码时,出现了错误。 Microsoft VBScript 编译错误“800a0409”未终止的字符串常量

set qry=dbconn.execute (" WITH SqlQuery AS ( SELECT  ROW_NUMBER() OVER( ORDER BY [text3] ASC ) AS Row,  * FROM ( SELECT 
    NotReturnedElements.IDElementuRuchuMagazynowego,
    r.IDRuchuMagazynowego,
    Towar.Nazwa as text1,
    Towar.KodKreskowy as text3,
    r.NrDokumentu as text5,
    r.Data as text6,
    stat.Name as 'Status',
    Kontrahent.Nazwa as text7,
    [Uzytkownik].[NazwaUzytkownika] as 'Twórca dokumentu',
    Towar.[NumerSeryjny] AS 'Numer Seryjny'
from
(
    SELECT IDElementuRuchuMagazynowego, sum(ilosc) as ilosc
    FROM
    (
        SELECT e.IDElementuRuchuMagazynowego, e.ilosc 
        FROM dbo.ElementRuchuMagazynowego e
        INNER JOIN dbo.RuchMagazynowy r ON r.IDRuchuMagazynowego = e.IDRuchuMagazynowego 
        WHERE r.IDRodzajuRuchuMagazynowego = 25 AND r.IDMagazynu = 10

        UNION ALL

        SELECT el_rent.IDElementuRuchuMagazynowego, -rel.Amount as ilosc
        FROM dbo.RentalElementsRelations rel
        INNER JOIN dbo.ElementRuchuMagazynowego el_rent ON rel.IDRentElement = el_rent.IDElementuRuchuMagazynowego
        INNER JOIN dbo.ElementRuchuMagazynowego el_return ON rel.IDReturnElement = el_return.IDElementuRuchuMagazynowego
        INNER JOIN dbo.RuchMagazynowy r ON r.IDRuchuMagazynowego = el_rent.IDRuchuMagazynowego 
        WHERE r.IDRodzajuRuchuMagazynowego = 25 AND r.IDMagazynu = 10
    ) Q
    GROUP BY IDElementuRuchuMagazynowego
    HAVING sum(ilosc) > 0
) NotReturnedElements
INNER JOIN ElementRuchuMagazynowego el_rent ON el_rent.IDElementuRuchuMagazynowego = NotReturnedElements.IDElementuRuchuMagazynowego
INNER JOIN dbo.RentalDocumentLines rent_line ON rent_line.IDRelatedDocumentLine = el_rent.IDElementuRuchuMagazynowego
INNER JOIN RuchMagazynowy r ON r.IDRuchuMagazynowego = el_rent.IDRuchuMagazynowego
INNER JOIN dbo.RentalDocuments rent ON rent.IDDocument = r.IDRuchuMagazynowego
INNER JOIN Towar ON Towar.IDTowaru = el_rent.IDTowaru
LEFT JOIN dbo.RentalStatus stat ON stat.IDRentalStatus = rent.IDStatus
LEFT JOIN Kontrahent ON Kontrahent.IDKontrahenta = r.IDKontrahenta
LEFT JOIN [dbo].[Uzytkownik] ON Uzytkownik.[IDUzytkownika] = r.[IDUzytkownika]
WHERE 
    (NULL IS NULL OR NULL = Kontrahent.IDKontrahenta)
    AND (NULL IS NULL OR NULL = Towar.IDGrupyTowarow)
    AND (NULL IS NULL OR NULL = Towar.IDTowaru) ) AS SubQuery  ) SELECT text1, text3, text5, text6, text7 FROM SqlQuery WHERE Row BETWEEN 1 AND 17") 

ASP classic 要求多行字符串在每行末尾用 & _ 终止和连接。这是一个简短的例子:

set qry=dbconn.execute ("SELECT  A.ColumnName " & _
     "from TableName [A] " & _
     "where A.ColumnName = 'Some Value' ")