Member 12652110 Ответов: 2

Как мне это сделать, чтобы условие было выполнено?


Я пробовал коды ниже, но они не работают

Что я уже пробовал:

using (SqlConnection con = new SqlConnection(strConnString))
{
    string strQuery = "SELECT * FROM LoanRates where DateTime.Now between LoanAvailableFrom and LoanAvailableTo";
    SqlCommand cmd = new SqlCommand(strQuery);
    using (SqlDataAdapter sda = new SqlDataAdapter())
    {
        cmd.Connection = con;
        con.Open();
        sda.SelectCommand = cmd;
        sda.Fill(da);
        GridView1.DataSource = da;
        GridView1.DataBind();

    }
}

George Jonsson

Какой тип имеет переменная da?
А что не работает? Нет данных, показанных в виде сетки?

Dave Kreskowiak

Так что "типа datetime.Теперь" предполагается сделать в SQL-операторе?

2 Ответов

Рейтинг:
17

Karthik_Mahalingam

Если приложение и база данных находятся на одном сервере или в одном месте, вы можете использовать это

string strQuery = "SELECT * FROM LoanRates where getdate() between LoanAvailableFrom and LoanAvailableTo";

ещё
string strQuery = "SELECT * FROM LoanRates where @date between LoanAvailableFrom and LoanAvailableTo";
           SqlCommand cmd = new SqlCommand(strQuery);
           string date = DateTime.Now.ToString("yyyy-MM-dd"); // check the format in your table
           cmd.Parameters.Add("@date", date);


Krunal Rohit

5!
КР.

Karthik_Mahalingam

Спасибо КР,

Рейтинг:
0

Mehdi Gholam

Попробуйте вместо этого эту строку :

string dt = DateTime.Now.ToString("yyyy-MM-dd");
string strQuery = "SELECT * FROM LoanRates where " + dt +" between LoanAvailableFrom and LoanAvailableTo";


Krunal Rohit

5!
КР.