Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.02;
Скачать: CL | DM;

Вниз

Даты в SQL - запросах   Найти похожие ветки 

 
SergP ©   (2005-08-18 20:45) [0]

БД - Access

Имеется дата в переменной TDate
нужно удалить записи в таблице для которые определенное поле (типа ДатаВремя) больше чем заданная дата.
Типа AdoConnection.Execute(delete from card where data>....

Как написать такое ?
Интересуют два момента:
1. Синтаксис запроса где используются даты.
2. Если дату придется преобразовывать в строку, то интересует работоспособность запроса при различных национальных настройках винды.


 
sniknik ©   (2005-08-18 20:54) [1]

параметр, и никакого синтаксиса учитывать не надо.

если строкой то больше вариантов что ошибешся именно ты, а аксесс в силу всеядности в данном вопросе, не даст ошибки а преобразует в первый подходяший формат.

http://delphimaster.net/view/15-1122405197/


 
SergP ©   (2005-08-18 21:12) [2]


> если строкой то больше вариантов что ошибешся именно ты,
> а аксесс в силу всеядности в данном вопросе, не даст ошибки
> а преобразует в первый подходяший формат.


Насчет всеядности - это вроде бы и хорошо, но....
А вот интерестно как акцесс поймет дату типа 03/05/2005 ?
Как 3 мая или как 5 марта?


> параметр, и никакого синтаксиса учитывать не надо.


Это интерестнее...
Указаную Вами ветку прочитал.
Но есть еще небольшой вопросик, уже касающийся Дельфей,
Мне не очень хочется наставлять создавать лишние TADOQuery, тем более что мне нужны запросы только типа DELETE, INSERT, UPDATE.

Как сделать параметрический запрос используя TADoConnection?
Имеется ввиду если не трудно приведите примерчик...


 
sniknik ©   (2005-08-18 21:40) [3]

> А вот интерестно как акцесс поймет дату типа 03/05/2005 ?
3 месяц(май) 5 число 2005г

> Как сделать параметрический запрос используя TADoConnection?
не получится, т.к. если посмотреть на интерфейсы обьектов, оберткой которых дельфевские являются то видно отличие...

Connection15 = interface(_ADO)
...
function Execute(const CommandText: WideString; out RecordsAffected: OleVariant;
     Options: Integer): _Recordset; safecall;
...

Command15 = interface(_ADO)
function Execute(out RecordsAffected: OleVariant; const Parameters: OleVariant; Options: Integer): _Recordset; safecall;

и если в источнике нет, то и дальше тоже. (можно конечно дополнительно к конекту комманд "прикрутить", исключительно для этого но зачем...)

> Мне не очень хочется наставлять создавать лишние TADOQuery, тем более что мне нужны запросы только типа DELETE,
> INSERT, UPDATE.
и правильно, для этого есть ADOCommand, про квери забудь. а для селектов/процедур ADODataSet. и все (итого 3 компонента) RDS-конектор в принципе можно использовать но, он так, сам по себе редкоиспользуемый.


 
sniknik ©   (2005-08-18 21:41) [4]

> Насчет всеядности - это вроде бы и хорошо, но....
наоборот. это очень плохо...


 
Anatoly Podgoretsky ©   (2005-08-19 09:43) [5]

SergP ©   (18.08.05 21:12) [2]
Как поймет так и поймет, а оно тебе надо бороться с пониманием, вместо того, что бы без него.


 
SergP.   (2005-08-19 10:40) [6]


> Как поймет так и поймет, а оно тебе надо бороться с пониманием,
> вместо того, что бы без него.


Так и сделал уже... Через параметры...



Страницы: 1 вся ветка

Текущий архив: 2005.10.02;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.056 c
3-1124258206
ученик789
2005-08-17 09:56
2005.10.02
Помогите вставить русский шрифт в InterBase


9-1117624793
Кирилл
2005-06-01 15:19
2005.10.02
Панель задач


2-1124700076
ArtemESC
2005-08-22 12:41
2005.10.02
Тонкая форма...


1-1126592148
Тормаз
2005-09-13 10:15
2005.10.02
компоненты для p2p


3-1124451623
Ландграф Павел
2005-08-19 15:40
2005.10.02
Какой алгоритм быстрее