Я пытаюсь выполнить запрос к базе данных Firebird с помощью C# и не имею что-то совершенно правильное. Обратите внимание, что я выполняю этот запрос с примера базы данных employee.fdb, который вы получаете при установке Firebird.запрос базы данных firebird с датой времени
Следующие работы.
string query = @"SELECT EMPLOYEE.HIRE_DATE
FROM EMPLOYEE
WHERE HIRE_DATE > '02.01.1990, 03.04.05.000'";
using (FbConnection connection = new FbConnection(connectionString))
using (DataContext db = new DataContext(connection))
{
List<employee> results = db.ExecuteQuery<employee>(query).ToList();
}
Если я параметризую дату.
string query = @"SELECT EMPLOYEE.HIRE_DATE
FROM EMPLOYEE
WHERE HIRE_DATE > {0}";
using (FbConnection connection = new FbConnection(connectionString))
using (DataContext db = new DataContext(connection))
{
List<employee> results = db.ExecuteQuery<employee>(query, "02.01.1990, 03.04.05.000").ToList();
}
Я получаю System.FormatException: Строка не была признана действительной DateTime.
И что бы я хотел сделать, просто использовать объект DateTime.
string query = @"SELECT EMPLOYEE.HIRE_DATE
FROM EMPLOYEE
WHERE HIRE_DATE > {0}";
using (FbConnection connection = new FbConnection(connectionString))
using (DataContext db = new DataContext(connection))
{
DateTime a = new DateTime(1990, 1, 2, 3, 4, 5);
List<employee> results = db.ExecuteQuery<employee>(query, a).ToList();
}
Но тогда я получаю System.ArgumentOutOfRangeException: Указанный аргумент был вне диапазона допустимых значений.
Кто-нибудь знает, как я могу использовать DateTime в качестве параметра для запроса?
Каков тип данных 'HIRE_DATE'? –
@MarkRotteveel HIRE_DATE имеет тип Timestamp – denver