1

まず第一に、私はこのクラブに参加したばかりで、非常に興味深いサイトだと言わざるを得ません。また、C# でのコーディング経験が大いに役立っています。ありがとうございます。

まったく別の話ですが、顧客の 1 人でフォロー エラーが発生しています (当社はドキュメント管理ソフトウェアを再販しています)。また、以下に示すこのエラー メッセージがパフォーマンスの問題を引き起こす可能性があるかどうかを判断しようとしています。

このエラー メッセージを Google で検索すると、予約語を列名として使用すると発生する可能性があることが既に通知されています。

24-4-2012 11:16:49 [エラー]:クエリの解析中にエラーが発生しました。[トークン行番号 = 1、トークン行オフセット = 77、エラーのトークン = 66667] UPDATE WS_LOCATION SET 頻度 = @FreqParams、LUTime = @LUTimeParams、クライアント = ''、マター = '' WHERE WSLoc_ID = '22' が InsertIntoLocationTables で発生しました.

私は SQL のすべての予約語に精通しているわけではありません。おそらく、このエラーの原因を特定するのに役立つ人がいますか?

ちなみに、これはローカルの SQL Compact データベースです (.sdf)。

4

2 に答える 2

1

名前を角かっこで囲むと、T-SQL 予約語の使用によるエラーを防ぐことができます。

UPDATE [WS_LOCATION] SET
[Frequency] = @FreqParams,
[LUTime] = @LUTimeParams,
[Client] = '',
[Matter] = ''
WHERE [WSLoc_ID] = '22';
于 2012-04-24T11:46:34.147 に答える
0

予約語に問題がある場合は、列名の前にテーブル名を付けます。

UPDATE WS_LOCATION 
SET WS_LOCATION.Frequency = @FreqParams, WS_LOCATION.LUTime = @LUTimeParams, WS_LOCATION.Client = '', WS_LOCATION.Matter = '' 
WHERE WS_LOCATION.WSLoc_ID = '22'
于 2012-04-24T09:53:33.340 に答える