|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
02.06.2012, 18:16 | #1 |
Форумчанин
Регистрация: 07.04.2010
Сообщений: 218
|
Ошибка определения типов опять
Вчера пробовал устранить проблему так и не решается выдает программа ошибку как на рисунке (Type mistmatch in expression). Уже не знаю в чем проблема. Все типы проверил все правильно. Подсобите еще кто чем сможет.
DM.Query2.DisableControls; DM.Query2.SQL.Clear; DM.Query2.SQL.Add('insert into NoteBook (Nomer_m, Type_proc, Takt_proc, Oper_pam, HDD, Video_sys, Videopamiat, Diagonal, Privod, Ves, Id_pr) values (:Nomer_m, :Type_proc, :Takt_proc, :Oper_pam, :HDD, :Video_sys, :Videopamiat, :Diagonal, :Privod, :Ves, :Id_pr)'); DM.Query2.ParamByName('Id_pr').AsIn teger:=DM.Query1.FieldByName('Id_pr ').AsInteger; DM.Query2.ParamByName('Nomer_m').As String:=Edit1.Text; DM.Query2.ParamByName('Type_proc'). AsString:=ComboBox1.Text; DM.Query2.ParamByName('Takt_proc'). AsInteger:=strtoint(Edit3.Text); DM.Query2.ParamByName('Oper_pam').A sInteger:=strtoint(Edit4.Text); DM.Query2.ParamByName('HDD').AsInte ger:=strtoint(Edit5.Text); DM.Query2.ParamByName('Video_sys'). AsString:=ComboBox2.Text; DM.Query2.ParamByName('Videopamiat' ).AsInteger:=Strtoint(Edit7.Text); DM.Query2.ParamByName('Diagonal').A sInteger:=strtoint(Edit8.Text); DM.Query2.ParamByName('Privod').AsS tring:=ComboBox3.Text; DM.Query2.ParamByName('Ves').AsInte ger:=strtoint(Edit10.Text); DM.Query2.ExecSQL; DM.Query2.Close; DM.Query2.SQL.Clear; DM.Query2.SQL.Text:='Select * from NoteBook where (Id_pr=:Id_pr)'; DM.Query2.Open; DM.Query2.EnableControls; |
02.06.2012, 18:31 | #2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
1. Покажи содержимое DM.Query2.SQL.Text после присваивания перед ExecSQL
2. Покажи структуру таблицы 3. Укажи какая СУБД 4. И вообще BDE знатно умеет глючить
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
02.06.2012, 18:47 | #3 |
Форумчанин
Регистрация: 07.04.2010
Сообщений: 218
|
1) DM.Query2.SQL.Text:= 'Select*from NoteBook where id_pr=:id_pr'
2) Схема таблицы на рисунке 3) СУБД Paradox7 4) Здесь полностью согласен, уже не первый раз сталкиваюсь с данной проблемой |
02.06.2012, 18:54 | #4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
1. Мне нужно содержимое поля Text после всех присваиваний перед командой DM.Query2.ExecSQL. И взять его нужно не из кода проги и не то, что показано, а во время выполнения программы. Ставьте точку останова на команду DM.Query2.ExecSQL и во время остановки выдерните то, что я прошу
2. Предварительно могу предположить, что в одно из SHORT-полей пытаетесь засунуть слишком большое число (допустимый интервал значений от -32 768 до +32 767 ) ADD В коде указано поле Nomer_m, а в структуре такого нет, зато есть Model_n. Не в этом собака зарыта?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 02.06.2012 в 19:28. |
02.06.2012, 20:19 | #5 |
Форумчанин
Регистрация: 07.04.2010
Сообщений: 218
|
С числами все в порядке и с названием поля тоже я просто другую подобную таблицу взял. Насчет ExexSQL не до конца понял: это делается с помощью клавишы F7 или по-другому объясните пошагово.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка определения типов | Ericnex | БД в Delphi | 1 | 01.06.2012 14:25 |
Опять ошибка(Pascal) | k4k7u3 | Помощь студентам | 1 | 01.02.2012 19:12 |
Операторы определения данных всех типов | Илья555 | Помощь студентам | 0 | 26.04.2011 18:47 |
Опять шаблоны... Можно ли написать реализацю для некоторых типов отдельно? | TwiX | Общие вопросы C/C++ | 3 | 19.09.2010 15:13 |
Опять ошибка | ddd329 | Общие вопросы C/C++ | 0 | 14.06.2010 22:39 |