Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #16  
Старый 14.12.2010, 14:15
Black Raider Black Raider вне форума
Местный
 
Регистрация: 31.05.2010
Адрес: Москва
Сообщения: 466
Версия Delphi: 7
Репутация: 40
По умолчанию

И сам запрос покажите!
Если это тот который выше то откуда взялся 3-й параметр?
__________________
Новый вирус - "БОМЖ"! Он просто роется в Корзине...и спит под ярлычком "Сетевое окружение"
Ответить с цитированием
  #17  
Старый 14.12.2010, 17:29
nanometr nanometr вне форума
Прохожий
 
Регистрация: 13.12.2010
Сообщения: 11
Репутация: 10
По умолчанию

Запрос я написал примерный, как и весь код. Суть от этого не поменялась. ftWideString делать параметры я пробывал. Ошибка никуда не изчезает. Типы все соответсвуют, на мой взгляд. У меня начинает возкникать ощущение, что проще просто все закрыть и написать заного.......... У кого нибудь вообще возникала такая ошибка когда нибудь? И как ее решали в таком случае?
Ответить с цитированием
  #18  
Старый 14.12.2010, 19:56
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

может так выполнять запрос:
Код:
  with TADOQuery.Create(Self) do
  begin
    Connection:=ADOConnection1;
    SQL.Text:='insert into country (Name, Capital, Population) values (:Name, :Capital, :Population)';
//    Parameters.ParamByName('Name').DataType:=ftInteger;
    Parameters.ParamByName('Name').Value:=ComboBox1.Text;
    Parameters.ParamByName('Capital').Value:=ComboBox2.Text;
    Parameters.ParamByName('Population').Value:=ComboBox3.Text;
    ExecSQL;
    Free;
  end;
http://data.cod.ru/79862
а если раскомментарить, то вылезет такя же ошибка
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #19  
Старый 15.12.2010, 11:19
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,723
Репутация: 52347
По умолчанию

Либо вы что-то упускаете, либо ...
А БД какая хоть? Если скажем выполнить средствами самой БД запрос вида:
Код:
insert into Table1(Field1,Field2) values('1','2')
Данные добавятся?
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #20  
Старый 15.12.2010, 11:54
Black Raider Black Raider вне форума
Местный
 
Регистрация: 31.05.2010
Адрес: Москва
Сообщения: 466
Версия Delphi: 7
Репутация: 40
По умолчанию

Код из рабочего (уже более 5 лет работает (тьфу-тьфу)) проекта все замечательно отрабатывает:
База на MSSQL.
Код:
adoquery6.Active:=false;
adoquery6.Parameters.ParamByName('doc').Value:=memlink_doc.AsInteger;
adoquery6.Parameters.ParamByName('summ').Value:=roundto(memsumma.AsFloat,-2);
adoquery6.Parameters.ParamByName('typ').Value:=1;
adoquery6.Parameters.ParamByName('st').Value:=0;
adoquery6.Parameters.ParamByName('bst').Value:=fbase;
adoquery6.Parameters.ParamByName('inn').Value:=MemINN.AsString;
adoquery6.ExecSQL;

Запрос такого вида:
Код:
Insert into Verefy_1c (doc,summa,typ,status,base_status,inn)
values(:doc,:summ,:typ,:st,:bst,:inn)

так подозреваю у вас база на Акцессе?
__________________
Новый вирус - "БОМЖ"! Он просто роется в Корзине...и спит под ярлычком "Сетевое окружение"
Ответить с цитированием
  #21  
Старый 16.12.2010, 10:23
nanometr nanometr вне форума
Прохожий
 
Регистрация: 13.12.2010
Сообщения: 11
Репутация: 10
По умолчанию

стоит ms sql server 2000.
Сам запрос средствами сервака выполняется на ура.
Ответить с цитированием
  #22  
Старый 16.12.2010, 10:28
nanometr nanometr вне форума
Прохожий
 
Регистрация: 13.12.2010
Сообщения: 11
Репутация: 10
По умолчанию

to Black Raider
Запрос у меня совершенно такой же. Код тоже практически один в один, только вот с правой стороны, в местах где значения берутся из ComboBox
появляется эта ошибка....
Ответить с цитированием
  #23  
Старый 16.12.2010, 10:45
Black Raider Black Raider вне форума
Местный
 
Регистрация: 31.05.2010
Адрес: Москва
Сообщения: 466
Версия Delphi: 7
Репутация: 40
По умолчанию

а не передается ли в качестве параметра пустая строка?
еще как вариант проставить в свойствах параметров тип input и типы.
__________________
Новый вирус - "БОМЖ"! Он просто роется в Корзине...и спит под ярлычком "Сетевое окружение"
Ответить с цитированием
  #24  
Старый 16.12.2010, 17:19
Аватар для MMM_Corp
MMM_Corp MMM_Corp вне форума
Прохожий
 
Регистрация: 12.12.2010
Сообщения: 37
Репутация: 13
По умолчанию

Ваш код передает параметры как строки, ошибку генерирует СУБД, вот тут и проблема, определите для каждого параметра тип - строка (если у вас в запрос параметры идут как строки) и убедитесь что запрос написан для параметров строк.
Ответить с цитированием
  #25  
Старый 20.12.2010, 10:03
nanometr nanometr вне форума
Прохожий
 
Регистрация: 13.12.2010
Сообщения: 11
Репутация: 10
По умолчанию

я так и не понял в чем была проблема. Просто переписал все занова, причем точно так же... и заработало. )
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 13:55.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025