標準の更新コマンドを使用してテーブル フィールドを更新できず、OLEDB パラメータの調査が求められました。
OLEDB はサポートしません。本質的に名前付きパラメータはサポートされていますが、それらの使用の試みは認識されます。これを利用して、SQL ステートメントで指定された順序で変数を渡すことによってフィールドを更新できます。
この方法を採用すると、SQL ステートメントをセマンティックな方法で記述でき、理解力が向上します。
using (OleDbConnection conn = new OleDbConnection(connString)) { conn.Open(); OleDbCommand cmd = conn.CreateCommand(); for (int i = 0; i < Customers.Count; i++) { cmd.Parameters.Add(new OleDbParameter("@var1", Customer[i].Name)) cmd.Parameters.Add(new OleDbParameter("@var2", Customer[i].PhoneNum)) cmd.Parameters.Add(new OleDbParameter("@var3", Customer[i].ID)) cmd.Parameters.Add(new OleDbParameter("@var4", Customer[i].Name)) cmd.Parameters.Add(new OleDbParameter("@var5", Customer[i].PhoneNum)) cmd.CommandText = "UPDATE Customers SET Name=@var1, Phone=@var2" + "WHERE ID=@var3 AND (Name<>@var4 OR Phone<>@var5)"; cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); } }
この例は、OLEDB パラメータを使用して「Customers」テーブルのフィールドを更新する方法を示しています。これは顧客のコレクションを反復処理し、それぞれのパラメータを SQL ステートメントに渡します。
この手法を採用することで、SQL ステートメントがより読みやすく理解しやすくなり、将来のデバッグやメンテナンスの作業が容易になります。
以上がパラメータを使用して OLEDB テーブルを効率的に更新するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。