![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ADOCommand.Parameters.CreateParameter [D7, MSSQL, Paradox]
312kbps © (2008-06-20 21:21:00)command.CommandText:='insert into Sec1 values(:p0,:p1,....,:p17)';
command.Parameters.Clear;
for p:=0 to DataS.DataSet.FieldCount-1 do
begin
command.Parameters.CreateParameter('p'+IntToStr(p),
DataS.DataSet.Fields.Fields[p].DataType,
pdInput,
DataS.DataSet.Fields.Fields[p].Size,
DataS.DataSet.Fields.Fields[p].AsString);
end;
command.Execute;
Ошибка "Неправильно определен объект Parameter. Представлены не совместимые или неполные сведения".
я из базы парадокс делаю инсерт в MSSQL2000
параметров 18 штук
скажи, как понять какиой именно параметр у меня не подходит !?
Ega23 (2008-12-24 10:13:00) [1]
> параметры у тебя создаются автоматически при присваивании
> SQL
Щаз. Это только в идеальном варианте так будет. А создай-ка ты какой-нибудь TADODataSet в рантайме, причём когда у тебя ещё никакого коннекшена нет.
Я посмотрю, как у тебя автоматом параметры появятся, ага...
(2008-12-24 01:42:00) [2]Удалено модератором
Правильный-Вася (2008-06-22 18:56:00) [3]
> "Command: Parametr 'p0' not found"
и какой же ж он 4-й?
чтобы такне ругалось, не нужно очищать список параметров
312kbps (2008-06-21 14:11:00) [4]без создания праметра я пробовала, делал так
Command..Parameters.ParamByName('p' + IntToStr(p)).Value := DataS.DataSet.Fields.Fields[p].Value;
ОШИБКА
"Command: Parametr 'p0' not found"
engine (2008-06-21 05:20:00) [5]> [7] 312kbps (21.06.08 00:11)
> сообщает что нельзя больше 3
Что, прям так и сообщает?
> [5] 312kbps (20.06.08 22:32)
> как же можно узнать в каком параметре у меня косяк !? )
Смотри:
> [7] 312kbps (21.06.08 00:11)
> но после того как начинаю присваивать 4 параметр , у меня
> ошибка,
312kbps (2008-06-21 00:11:00) [6]я так делал, но после того как начинаю присваивать 4 параметр , у меня ошибка, сообщает что нельзя больше 3.
!?
engine (2008-06-20 23:16:00) [7]Тебе нужно присвоить параметру значение?
Если да, то делай таким образом:
Command..Parameters.ParamByName('p' + IntToStr(p)).Value := DataS.DataSet.Fields.Fields[p].Value;
312kbps (2008-06-20 22:32:00) [8]"> параметры у тебя создаются автоматически при присваивании SQL
> можно сразу использовать, можно доуточнить тип данных и input-направление"
я этого не понял, объясните подалуйста по другому ) !?
даже если я так решил решить свою задачу, как же можно узнать в каком параметре у меня косяк !? )
Правильный-Вася (2008-06-20 22:23:00) [9]
> мне нужно только два последних параметра(проще было сделать
> все поля выгрузить в параметры)
так два или все?
> что я делаю не так !?
> параметры у тебя создаются автоматически при присваивании SQL
> можно сразу использовать, можно доуточнить тип данных и input-направление
312kbps (2008-06-20 22:12:00) [10]ни чего не понял )))
что я делаю не так !?
на самом деле мне нужно только два последних параметра(проще было сделать все поля выгрузить в параметры), так они мемо и напрямую в сиквел их выгрузить из парадокса нельзя, то первая причина
а вторая, в том что, при прямом экспорте в сиквел, там нарушается кодирока и получаются иероглифы
вот я через вде считываю таблица и инсертю а сиквел )
engine (2008-06-20 21:47:00) [11]Не понял, а зачем CreateParameter?
Правильный-Вася (2008-06-20 21:44:00) [12]нахрена козе баян, а?
параметры у тебя создаются автоматически при присваивании SQL
можно сразу использовать, можно доуточнить тип данных и input-направление
остальное нафиг не нужно