Не могли бы вы помочь мне найти решение моей проблемы?Я использую базу данных SQL Server, это программа гимнастики, и я хочу получить чек на клиенте, когда он приходит в спортзал, у меня есть два способа предложить первый - ежемесячный, а второй - ежедневныйВо-первых, у меня нет проблем с этим, и я использую этот код для регистрации;
using (SqlCommand com = new SqlCommand("select count(*)from enddate where ID=@ID and startdate <=@C1 and endDate >=@C2", con))
{
com.Parameters.AddWithValue("@ID", ID.Text);
com.Parameters.AddWithValue("@C1", DateTime.Now);
com.Parameters.AddWithValue("@C2", DateTime.Now);
int count = (int)com.ExecuteScalar();
if (count > 0)
{
using (SqlCommand com1 = new SqlCommand("INSERT INTO [checkin] (ID,time,username) VALUES (@ID,@time,@username)", con))
{
com1.Parameters.AddWithValue("@ID", ID.Text);
com1.Parameters.AddWithValue("@time", txttime.Text);
com1.Parameters.AddWithValue("@username", txtusername.Text);
com1.ExecuteNonQuery();
}
MetroFramework.MetroMessageBox.Show(this, "Check In Sucssesfuly ................... ", "Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
MetroFramework.MetroMessageBox.Show(this, "this ID Expired .....................", "Message", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
con.Close();
}
Я хочу добавить к этому коду второе условие (ежедневное предложение) У меня есть таблица конечных дат, как;
| ID | Startdate | month | day | enddate | offer |
| 1 | 20-3-2019 | 3 |null |20-6-2019|( summer ) monthly |
| 2 | 20-3-2019 | null | 5 |20-3-2019|( student ) daily |
в этом случае первый может прийти в любое время в течение 3 месяцев, во втором он может прийти только 5 раз.
моя таблица регистрации;
| ID | Time | username |
| 1 | 21-3-2019| test |
| 1 | 25-3-2019| test |
| 2 | 27-3-2019| test 2 |
Я могу посчитать, сколько раз он приходит в спортзал, но я не знаю, как добавить это в мой код