Asp.net でデータ入力ページを作成しています。入力は今のところ問題なく、必要な機能はすべて揃っていますが、データが入力されたことを確認したいと思います。
最初は、クエリが成功したときにメッセージボックスを表示するために少しのjavascriptを使用していましたが、これがありました。入力されたデータがデータベースにまだ存在しない場合にのみ、クエリの挿入を変更するまで、それはうまくいきました。
データ入力用の Asp メソッドは次のとおりです。
private void ExecuteInsert(string name, string type)
{
//Creates a new connection using the HWM string
using (SqlConnection HWM = new SqlConnection(GetConnectionStringHWM()))
{
//Creates a sql string with parameters
string sql = " IF NOT EXISTS "
+ " ( SELECT 1 "
+ " FROM tblSoftwareTitles "
+ " WHERE Softwarename = @SoftwareName "
+ " AND SoftwareSystemType = @Softwaretype "
+ " ) "
+ " BEGIN "
+ " INSERT tblSoftwareTitles (SoftwareName, SoftwareSystemType) "
+ " VALUES (@SoftwareName, @SoftwareType) "
+ " END; ";
//Opns the connection
HWM.Open();
try
{
//Creates a Sql command
using (SqlCommand addSoftware = new SqlCommand{
CommandType = CommandType.Text,
Connection = HWM,
CommandTimeout = 300,
CommandText = sql})
{
//adds parameters to the Sql command
addSoftware.Parameters.Add("@SoftwareName", SqlDbType.NVarChar, 200).Value = name;
addSoftware.Parameters.Add("@SoftwareType", SqlDbType.Int).Value = type;
//Executes the Sql
addSoftware.ExecuteNonQuery();
}
}
catch (System.Data.SqlClient.SqlException ex)
{
string msg = "Insert Error:";
msg += ex.Message;
throw new Exception(msg);
}
}
}
そしてJavaScript呼び出し
Alert.Show("Software instance saved!");
これは別のファイルに移動するだけです。
最初は、メッセージ ボックス スクリプトを try ステートメントの最後に配置しました。データが完全に一意で保存されている場合、または一意ではなく入力されていない場合にメッセージ ボックスを表示できるサーバーからの休息を取得するのに助けが必要です。
サーバーがレコードを追加し、保存されたメッセージボックスを表示するかどうかを示すifステートメントが本質的に必要です。それ以外の場合、データが既に存在することを示すメッセージボックスを表示します。
これを達成する方法はありますか?