0

sqlserverに接続されたsqldatasourceに接続されたGridviewがあり、Selectこれにステートメントを追加しました。これは、希望どおりに機能します。

SELECT S.[ID], S.[Survey_Name], S.[Start_Date], S.[End_Date], C.[Category_Name], S.[Username], S.[Picture],S.[Audience] FROM [Survey] S
Inner Join
Category C On S.Category_ID = C.ID

Updateユーザーがグリッドビューを編集しようとしたときに、上記のフィールドを更新するだけのステートメントを追加する必要があります。これを試しました。

UPDATE 
         Survey S
INNER JOIN
         Category C
                  On S.Category_ID = C.ID
 SET
 S.Survey_Name=@Survey_Name,
S.Start_Date=@Start_Date,
S.End_Date = @End_Date, 
C.Category_Name =@Category_Name,
S.Username = @Username,
S.Audience=@Audience 

Where
 ID=@ID

しかし、それは機能せず、無効な構文「S」や無効な構文「Inner」などのエラーが表示され続けます。

4

1 に答える 1

4

更新ステートメントが正しくありません:

UPDATE Survey
 SET
 Survey.Survey_Name=@Survey_Name,
 Survey.Start_Date=@Start_Date,
 Survey.End_Date = @End_Date, 
 C.Category_Name = @Category_Name,
 Survey.Username = @Username,
 Survey.Audience=@Audience 
FROM Survey S
INNER JOIN Category C 
 On S.Category_ID = C.ID
Where
 S.ID=@ID

編集

UPDATE Survey
 SET
 Survey_Name=@Survey_Name,
 Start_Date=@Start_Date,
 End_Date = @End_Date, 
 Category_ID =C.ID,
 Username = @Username,
 Audience=@Audience 
FROM Survey S
INNER JOIN Category C 
 On C.Category_Name = @Category_Name
WHERE
 S.ID=@ID
于 2012-12-06T15:17:34.847 に答える