Текущий архив: 2005.07.25;
Скачать: CL | DM;
Вниз
Как запустить встроенную процедуру SQL серв.с параметрами Найти похожие ветки
← →
Lenik (2005-06-09 14:26) [0]date:="06/08/2005";
ADOCommand1.ConnectionString:="DRIVER={SQL Server};SERVER="+host+";DATABASE=Northwind;uid=sa;pwd=qwerty";
ADOCommand1.CommandType :=CmdStoredProc;
ADOCommand1.Parameters.ParamByName(date);
ADOCommand1.CommandText:= "exec fz_udk";
ADOCommand1.Execute;
Выдаётся сообщение , что не найдена fz_udk
Подскажите ,как правильно написать
← →
stone © (2005-06-09 14:35) [1]тут уж либо
> ADOCommand1.CommandType := cmdText;
либо
> ADOCommand1.CommandText:= "fz_udk;1";
> ADOCommand1.Parameters.ParamByName(date);
а вот это вообще не понятно
← →
Lenik (2005-06-09 14:51) [2]Всё равно не запускается , требует параметр date ,который используется во встроенной процедуре
← →
sniknik © (2005-06-09 15:15) [3]ADOCommand1.ConnectionString:="DRIVER={SQL Server};SERVER="+host+";DATABASE=Northwind;uid=sa;pwd=qwerty";
ADOCommand1.CommandText:= "exec fz_udk ""20050806""";
ADOCommand1.Execute;
← →
Lenik (2005-06-09 15:30) [4]ADOCommand1.ConnectionString:="DRIVER={SQL Server};SERVER="+host+";DATABASE=Northwind;uid=sa;pwd=qwerty";
ADOCommand1.CommandText:= "exec fz_udk ""20050806""";
ADOCommand1.Execute;
Не работет , хочет параметр @date ,используемый в процедуре fz_udk
← →
sniknik © (2005-06-09 15:37) [5]> Не работет , хочет параметр @date ,используемый в процедуре fz_udk
не может быть. если ничего не менялось кроме этих свойств должно работать. (а если поставил CmdStoredProc то и пиши команду по его синтаксису, а проще в дизайн тайме набрать)
← →
Lenik (2005-06-09 16:49) [6]ADOCommand1.ConnectionString:="DRIVER={SQL Server};SERVER="+host+";DATABASE=Northwind;uid=sa;pwd=qwerty";
ADOCommand1.CommandText:= "exec fz_udk ""06/08/2005""";
ADOCommand1.Execute;
Это работает , но мне надо передавать не конкретное значеие а переменную вида @date="06/08/2005"
в Sql запросе это выглядит так - Exec Fz_udk @date="06/08/2005"
встроенная процедура начинается так :
CREATE PROCEDURE fz_udk
@date varchar(10)
AS
.......
Поскажите ,как это реализовать в делфи
← →
Stanislav © (2005-06-09 16:57) [7]Пишите так:
Exec Fz_udk :DATE
ADOCommand1.Parameters[0].Value:="06/08/2005"
← →
Lenik (2005-06-09 17:13) [8]в выражении
ADOCommand1.CommandText:= "exec fz_udk ""06/08/2005""";
мне надо писать не "06/08/2005" ,а переменную ,в которую
надо предварительно записать это значение
← →
Lenik (2005-06-09 17:31) [9]date:="06/08/2005";
ADOCommand1.ConnectionString:="DRIVER={SQL Server};SERVER="+host+";DATABASE=Northwind;uid=sa;pwd=123456";
ADOCommand1.CommandText:= "exec fz_udk ="+date;
ADOCommand1.Execute;
Подскажите ,почему не работает !
← →
sniknik © (2005-06-09 17:43) [10]дата получилось не строка. читай сообщения об ошибках.
← →
Fay © (2005-06-09 17:48) [11]date := "20050806";
← →
sniknik © (2005-06-09 18:21) [12]о, сразу не заметил. + к тому что передается число а параметр строковый, еще и знак равно ни к чему там (ошибка синтаксиса).
← →
Lenik (2005-06-10 09:49) [13]date:="06/08/2005";
ADOCommand1.ConnectionString:="DRIVER={SQL Server};SERVER="+host+";DATABASE=Northwind;uid=sa;pwd=123456";
ADOCommand1.CommandText:= "exec fz_udk date";
ADOCommand1.Execute;
Подскажите ,почему не работает !Ругается на ошибку конвертации
String в SmallDateTime
← →
sniknik © (2005-06-10 10:46) [14]это потому, что переменная в дельфях не является для mssql чемто значимым (он про нее (да и про дельфи) вообще ничего не знает).
значение дельфевой переменной надо передать в mssql, лучше параметром, но можно и модификацией запроса.
(и не спрашивай как, тебе приводили по крайней мере 2 варианта, повторятся моветон)
Страницы: 1 вся ветка
Текущий архив: 2005.07.25;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.012 c