2008-09-26 88 views
12

雖然移植從2005年SQL應用程序SQL Server精簡版,我發現我需要移植這個命令:SQL緊湊型選擇前1

SELECT TOP 1 Id FROM tblJob WHERE Holder_Id IS NULL 

但SQL Server精簡版不支持TOP關鍵字。我怎樣才能移植這個命令?

回答

0

看起來不能做到緊湊。你必須閱讀所有的工作,或者創建一個SqlReader,然後閱讀第一個。

2

這是略垂直於你的問題。

對於SQL查詢,SQL Server Compact Edition實際上表現不佳。直接打開表格可以獲得更好的性能。在.NET中,通過將命令對象的CommandText屬性設置爲表名稱,將CommandType屬性設置爲CommandType.TableDirect來完成此操作。

如果要過濾結果,您需要在要過濾的列上的表上的索引。通過設置IndexName屬性來指定要使用的索引,並使用SetRange來設置過濾器。

然後,您可以根據需要閱讀更多或更少的記錄。

0

那麼找到了一個理由。 Management Studio攜帶並使用它自己的SQL Server Compact版本。詳見http://en.wikipedia.org/wiki/SQL_Server_Compact

SQL Server管理2005 Studio可以 讀取和修改CE 3.0和3.1 數據庫文件(具有最新 服務包),但在SQL Server 管理2008工作室從 「卡特邁」 2008 CTP版本(或更高版本) 需要閱讀3.5版本的文件。

SQL Server管理 2008工作室和Microsoft Visual Studio Express的2008 SP1的RTM可以創建,修改 和查詢CE 3.5 SP1數據庫 文件。