私は、ユーザーが家庭教師を予約できるウェブフォームを持っています。しかし、彼らはまず予約のコース/科目、日時を選択する必要があります。私はコース、日付と時間がすべて同じ時間にテーブルに表示されていないかどうかを確認するためにデータベースを実行する方法があります。言い換えれば、それは予約が利用可能であるか、または誰かがその特定の日時のコースを予約しているかどうかをチェックする。条件が期待される文脈で、 'and'の近くに指定された非ブール型の式。 C#
コード:
public void Availability(string course, string time, string date)
{
try
{
using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["tlcString"].ConnectionString))
{
string message = "Booking already exists";
string query = "Select * From Bookings Where [[email protected]] and [[email protected]] and [[email protected]];";
using (SqlCommand command = new SqlCommand(query, conn))
{
command.Parameters.Add("@course", SqlDbType.NVarChar, 50).Value = course;
command.Parameters.Add("@time", SqlDbType.NVarChar, 50).Value = time;
command.Parameters.Add("@date", SqlDbType.DateTime, 50).Value = date;
conn.Open();
using (SqlDataReader dr = command.ExecuteReader())
{
if (dr.Read())
ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('" + message + "');", true);
dr.Close();
}
conn.Close();
}
}
}
catch
{
string error = "Error checking availability of booking";
ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('" + error + "');", true);
}
}
それは、このエラー
条件が期待されているコンテキストで指定された非ブール型の式、近くを示し 'と'
なぜ[[Course = @ course] 'のような大括弧を使用していますか?しないでください。 – CodeCaster