1

SQL Server 2008 r2 Management studio をインストールしましたが、サーバーには SQL Server 2005 データベースがあります。SQL Server 2008で作成したSQL Server 2005で動作するクエリをテストできる理由はありますか.

SQL Server 2008 では動作するが 2005 では動作しないサンプル クエリがあります。

CREATE TABLE #Tmp
(
    NoOfMembers int,
    AverageAge int
)
insert into #Tmp(NoOfMembers,AverageAge)       

Values((Select Count(*)NoOfMembers  From Customer where Confirmed = 1),
(Select AVG(CONVERT(int,Age)) AverageAge From Customer where Confirmed = 1)
)
select * From #Tmp

事前に感謝します

4

2 に答える 2

0

SQL2008管理スタジオを2005SQLサーバーに対して問題なく使用できます。SQLステートメントがデータベースに対して実行され、SQL 2005で機能しない場合、サーバーはエラーメッセージで応答します。

SQL 2008を使用していて、2005に対してテストする場合は、互換モードを2005に設定できます。これも機能します。

投稿されたSQLステートメントは、値の部分でサブクエリを使用したいと考えています。これはsql2005では機能せず、エラーが発生します。2005年にこれが必要な場合は、たとえばスカラー関数を作成し、代わりにこれを使用してください。

編集:ステートメントなしでSQLを使用してテーブルにデータを挿入する場合は、次のVALUESように実行できます。

CREATE TABLE #Tmp
(
    NoOfMembers int,
    AverageAge int
)

INSERT INTO #Tmp(NoOfMembers,AverageAge)       
SELECT COUNT(*), AVG(CONVERT(int,Age)) 
FROM Customer WHERE Confirmed = 1

SELECT * FROM #Tmp
于 2013-03-14T06:39:01.147 に答える