SELECTに使用されたSQL文が返されたフィールドの1つとして計算列を持つ場合、INSERTとUPDATESのSqlDataAdapter/SqlCommandbuilderでエラーを回避する正しい方法は何ですか?SqlCommandBuilderとSQL Server Computed Columns - エラー
数値「列は、計算列またはUNION演算子の結果であるため、変更できません。
UPDATE:
SELECT *, PercentRating * 500 AS CoreValue FROM ValueListings
そして、計算列を捨てる: 私はこのようなクエリを使用して問題を修正しました。 これで動作します。どのようにSqlCommandBuilderはになりませんか?は、CoreValueフィールドをUPDATEステートメントとINSERTステートメントにビルドしますか?誰もが内部的にどのように動作するか知っていますか?
グッドニュースは、恥あなたは恐ろしい使用星の通知を選択してください! –
select *表記の何が問題になっていますか?私はこれらのステートメントがDSLに組み込まれているので、SQLを単純なままにしています。 – BuddyJoe
select *を使用する際の問題は、この表にあるレコード数と列数に応じて、パフォーマンスに影響する可能性があることです。たとえば、8列のテーブルから3列だけを必要とする場合は、select *の代わりにselect column1、column2、column3を呼び出すと、必要のないデータが返されるため、より良い結果が得られます。 –