いつParameters. Add/AddWithValue
を使用しますか?次のMSDNの例で は、彼らはあなたが少しより多くの仕事を持つすべてを明示したい場合は、Use Add
datetime
SqlCommandパラメーターの追加とAddWithValueの比較
答えて
のために使用するのが最適です何string
command.Parameters.Add("@ID", SqlDbType.Int);
command.Parameters["@ID"].Value = customerID;
command.Parameters.AddWithValue("@demographics", demoXml);
ためint
とParameters.AddWithValue
ためParameters.Add
を使用しています。あなたが怠けている場合は、AddWithValue
を使用してください。 AddWithValue
は、その値のパラメータの型を派生するので、正しい型であることを確認してください。たとえば、正しいタイプの場合は、string
〜int
を解析する必要があります。
Add
を避ける理由の1つがあります。パラメータタイプがint
の場合は、another overload is chosen with the SqlDbType
-enum以降はoverload that takes the parameter-name and an objectに注意する必要があります。 remarksから
:あなたは、整数パラメータ値を指定するには、 SqlParameterCollection.Addメソッドのこのオーバーロードを使用している
ご注意ください。 このオーバーロードではObject型の値が使用されるため、 のC#の例が示すように、値が0の場合は を整数型のObject型に変換する必要があります。
parameters.Add("@pname", Convert.ToInt32(0));
あなたはこの変換を実行しない場合、 コンパイラは SqlParameterCollection.Add(文字列、は、SqlDbType)オーバーロードを呼び出そうとしていることを前提としています。
[' cmd.Parameters.Add'は廃止されました。代わりに 'cmd.Parameters.AddWithValue'を使用してください。(http://stackoverflow.com/a/29554589/3936696) –
@RahulNikate:' AddWithValue'は、パラメータの型からパラメータの型を推定するため、最良の方法でもありません。これはしばしば、悪い実行計画や不正確な変換につながります。また、最初にパラメータを検証することもしません( 'Datetime'の場合はタイプしますが、' String'を渡す場合)。 'Add(String parameterName、Object value)'のみが 'Add'の他の全てのオーバーロードを非推奨にしています。私はパラメータ名と 'SqlDbType'を取る方が好きです(文字列型の場合はサイズを指定することを検討してください)。 –
'AddWithValue'は私の答えで述べた問題を回避し、' Add(string、object) 'と同じ機能を持っています。 –
- 1. SqlCommandオブジェクトAddWithValue
- 2. SqlCommandとSqlDataAtapterのパラメーター
- 3. SqlCommandと比較するにはどのように追加できますか?
- 4. AddWithValueがSqlCommandクエリで機能しない
- 5. Swift4でのHTTPヘッダーとパラメーターの追加
- 6. REST API:カスタムHTTPヘッダーとURLパラメーターの比較
- 7. DjangoのFオブジェクトとの比較クエリの追加null以外のチェックの追加
- 8. MySQL:追加のid列とパフォーマンスの比較
- 9. レールに比較機能を追加
- 10. フォルダ内のファイルの比較、削除、追加
- 11. CSVファイルの比較を使用したCSVの追加
- 12. 比較のためのペアリストに乱数を追加する
- 13. autolayoutの制約の追加とIBインスペクタの自動サイズ設定の比較
- 14. SqlDataAdapterでSqlCommandをパラメーターとして渡そうとしています
- 15. Googleアナリティクスとリアルタイムアナリティクスの比較:ChartbeatとClickyとMixpanelの比較
- 16. 複数の列の値を比較し、比較結果に基づいて追加の列を設定する
- 17. NSDictionaryに追加する前のキーを比較する
- 18. サブクエリの結果を追加および比較する方法
- 19. マージソート用の比較カウンタをPythonで追加するには?
- 20. bash:2つのファイルを比較して列を追加する
- 21. カール・パラメーターで改行を追加する
- 22. スワッガークライアント、要求に固定パラメーターを追加
- 23. パラメーターを追加するには
- 24. 顧客ごとの古い購入の列を追加して比較する
- 25. MySQLの比較と '%'
- 26. OrElseとの比較
- 27. プライベートインターフェイスとの比較
- 28. ViewStateとクッキーとの比較対キャッシュの比較
- 29. 比較条件と比較条件
- 30. SQLパラメーターとして月と日付を追加する
['cmd.Parameters.Add'は廃止されました。代わりに 'cmd.Parameters.AddWithValue'を使用してください。(http://stackoverflow.com/a/29554589/3936696) –