PetaPoco {"Неверный синтаксис рядом с '@ 0'."} CTE - PullRequest
0 голосов
/ 05 июня 2018

Я получаю сообщение об ошибке:

{"Неверный синтаксис рядом с '@ 0'."}

Когда я изменяю @ 0 на целое число, т.е. 100, тогда я получаю сообщение об ошибке:

{"Неверный синтаксис рядом с '*'."}

Я не уверен, что происходит.Проблема CTE из того, что я прочитал, больше не должна быть проблемой с petapoco.Есть идеи?

 Using db = New Database("cs")
            oHistoricalTicker = db.SingleOrDefault(Of MyTicker)(";WITH CTE AS 
                                                                (
                                                                    SELECT TOP @0 (*) FROM Ticker WHERE ProductId=@1
                                                                    ORDER BY ID DESC
                                                                )  SELECT TOP (1) * FROM CTE ORDER BY ID ASC", iHistoricalTicks, TicketSymbol)

        End Using

1 Ответ

0 голосов
/ 05 июня 2018

SQL должен быть:

;WITH CTE AS 
 (
SELECT TOP (@0) * FROM Ticker WHERE ProductId=@1
ORDER BY ID DESC)  SELECT TOP (1) * FROM CTE ORDER BY ID ASC
...