Форум: "Базы";
Текущий архив: 2003.06.26;
Скачать: [xml.tar.bz2];
ВнизНе получается в TADOStoredProc работать с MS SQL 2000 с DateTime Найти похожие ветки
← →
Alexander Tarasov (2003-06-02 14:42) [0]Уважаемые коллеги!
Подскажите, пожалуйста, что я делаю не так?
Есть ХП в MS SQL 2000, которая имеет входной параметр @field3_3 типа DATETIME. В программе пишу:
ADOStoredProc1.Parameters.ParamByName("@field3_3").Value := "01.01.2003";
ADOStoredProc1.ExecProc;
На ExecProc получаю ошибку:
"[Micrisoft][ODBC SQL Server Driver]Optional feature not implemented"
С параметрами других типов проблем нет. Пробовал менять формат даты, операционную систему, ставил Update pack 2 - помогает :(
← →
NAlexey (2003-06-02 16:21) [1]Попробуй не string присваивать, а дату.
← →
Тих (2003-06-02 23:27) [2]FormatDateTime => "2003-01-01"
← →
интересующийся (2003-06-03 07:00) [3]может лучше сделать параметр string,
а внутри процедуры значение преобразовать в datetime
- знаешь свой формат даты
- не зависишь от формата даты сервера
- при установке на другой сервер не паришься
← →
Alexander Tarasov (2003-06-03 09:25) [4]Большое спасибо всем за советы...
Проблему удалось решить следующим образом:
перед инициализацией параметров поставил
ADOStoredProc1.Parameters.Refresh;
:)
← →
Nic_B (2003-06-03 09:36) [5]Не знаю как на MS SQL 2000 но у меня на стареньком MS SQL 6.5 работает такой код:
function TForm1.SQL_Date_String ( Date : TDateTime ): string;
var OldFormat : string;
ResultStr : string;
begin
If Date>0 then
begin
OldFormat:=ShortDateFormat;
ShortDateFormat:="mm/dd/yyyy";
ResultStr:=DateToStr(Date);
ShortDateFormat:=OldFormat;
Result:=copy(ResultStr,7,4)+copy(ResultStr,1,2)+copy(ResultStr,4,2);
end
else
Result:="";
end;
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.06.26;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.027 c