2012-05-22 101 views
1

我有一個sql代碼選擇,我不斷收到'錯誤的語法'錯誤。不正確的語法

我看不到是什麼原因引起的問題。

任何人都可以指出明顯的我嗎?我也許一直盯着代碼太久,現在看不到它!

我的代碼是: -

DECLARE @CostCatID AS Int 

SELECT * FROM vwREP_GP_ContractProjectPurchaseRpt 
WHERE PACOSTCATID IN (@CostCatID) 
AND (DOC_DATE >= @DateFrom) 
AND (DOC_DATE <= @DateTo) 
order by 1 

和完整的錯誤消息我得到的是: -

附近有語法錯誤 ';'

我知道這對大多數人來說都是顯而易見的,但對於我疲憊的狀態中的生活我無法得到這個工作。

在此先感謝。

+0

爲什麼這個元數據是>和<?你有沒有試過< >? –

+0

感謝人。我從之前版本的報告中獲取的代碼不工作。我正在重建它。應該已經發現了一個。再次感謝! – user1086159

回答

4

&gt;&lt;(所有工作正在在SQL Server Management Studio 2005中進行)?你爲什麼編碼><?這是你的問題。嘗試:

DECLARE @CostCatID AS Int 

SELECT * FROM vwREP_GP_ContractProjectPurchaseRpt 
WHERE PACOSTCATID IN (@CostCatID) 
AND (DOC_DATE >= @DateFrom) 
AND (DOC_DATE <= @DateTo) 
ORDER BY 1 
0

不知道爲什麼你正在使用&gt;&lt;,你需要使用><

DECLARE @CostCatID AS Int 

SELECT * FROM vwREP_GP_ContractProjectPurchaseRpt 
WHERE PACOSTCATID IN (@CostCatID) 
AND (DOC_DATE >= @DateFrom) 
AND (DOC_DATE <= @DateTo) 
order by 1 
0

您使用&gt;&lt;:你從網頁上覆制?

DECLARE @CostCatID AS Int 

SELECT * FROM vwREP_GP_ContractProjectPurchaseRpt 
WHERE PACOSTCATID IN (@CostCatID) 
AND (DOC_DATE >= @DateFrom) 
AND (DOC_DATE <= @DateTo) 
order by 1 
0

這一次,在SQL的錯誤信息是非常有幫助的:

附近有語法錯誤 ';'

而且您的字符串&gt;=未在您的代碼中加引號。

我想你的意思是使用>=<=來代替。