1

SQL Server CE を実行している Windows Mobile で実行されている既存のアプリケーションがあり、C# 言語でインライン クエリを使用しています。これは、Management Studio で正しく機能する私のクエリです。

command = @"SELECT  
                P_InspectionStep.InspectionStepID,
                P_InspectionStep.Sequence AS Sequence,
                P_InspectionStep.Title AS Title,
                P_InspectionStep.Body AS Body,
                P_InspectionStep.Photo AS Photo,
                P_Inspection.RevisionID
            FROM
                P_InspectionStep
            LEFT JOIN 
                P_Inspection ON P_Inspection.InspectionID = P_InspectionStep.InspectionID
            WHERE 
                P_Inspection.InspectionID = '" + mInspectionID + "'" +
                @"AND P_Inspection.CreateDate = (SELECT MAX(P_Inspection.CreateDate) FROM P_Inspection)

            UNION ALL

            SELECT
                C_InspectionStep.InspectionStepID,
                C_InspectionStep.Sequence AS Sequence,
                C_InspectionStep.Title AS Title,
                C_InspectionStep.Body AS Body,
                C_InspectionStep.Photo AS Photo,
                C_Inspection.RevisionID
            FROM 
                C_InspectionStep
            LEFT JOIN 
                C_Inspection ON C_Inspection.RevisionID = C_InspectionStep.RevisionID
            WHERE 
                C_Inspection.InspectionID = '" + mInspectionID + "'" +
                @"AND C_Inspection.CreateDate = (SELECT MAX(C_Inspection.CreateDate) FROM C_Inspection)
            ORDER BY 2;";

しかし、アプリケーションでそれを実行すると、これが返されますSqlCeException:

クエリの解析中にエラーが発生しました。[ トークン行番号 = 10、トークン行オフセット = 132、エラーのトークン = SELECT ]

私は多くの検索を行いましたが、これを解決する方法を見つけることができません。

4

2 に答える 2

0

の価値を提供する

(SELECT MAX(P_Inspection.CreateDate) FROM P_Inspection)

事前に実行された別のクエリから。

于 2013-07-02T12:34:53.750 に答える