-1

私はプロジェクトに取り組んでおり、新しいフィールドをテーブルに追加したばかりで、アプリケーションでそのフィールドの null 値を見つけて、デフォルトとして 1 に設定したいと考えています。これは私がこれまでに持っているものです。どんな提案でも大歓迎です。ありがとう。

sqlCN = new SqlConnection(strCOM);
try
{
    sqlCN.Open();
    sqlCOM = new SqlCommand("select f_ProviderType from t_Provider", sqlCN);

    sqlDR = sqlCOM.ExecuteReader();

    if (sqlDR.IsDBNull(0))
    {
        sqlstr = "INSERT INTO t_Provider(f_Provider_Type) VALUES  (1)";
    }

    sqlDR.Close();

}
catch (DataException ex)
{
    Response.Write(ex.ToString());
}
finally
{
    sqlCN.Close();
    sqlDR = null;
    sqlCOM = null;
    sqlCN = null;
}
4

2 に答える 2

1

あなたが書いたものは機能しません (既存の行を更新する代わりに新しい行を挿入します)。また、かなり非効率的です。代わりに、次の SQL を実行できます。

UPDATE t_Provider SET f_ProviderType = 1 WHERE f_ProviderType IS NULL
于 2013-05-23T13:22:54.263 に答える
0

あなたのクエリは

update t_Provider set f_Provider_Type=1 WHERE f_ProviderType IS NULL
于 2013-05-23T13:23:25.567 に答える