Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.04.2010, 16:00   #1
DimOn4Ik
Форумчанин
 
Регистрация: 10.10.2009
Сообщений: 206
По умолчанию Добавление записи через TQuery [ошибка]

Помогите пожалуйста..Подскажите в чём ошибка? Пытаюсь с поля Name.Text добавить запись в БД Paradox

Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('INSERT INTO country (Name) VALUES (Name.Text)');

Query1.Open;
end;
Project1.exe raised exception class EDBEngineError with message 'Invalid field name.text'.Process stoped....

Последний раз редактировалось DimOn4Ik; 10.04.2010 в 16:11.
DimOn4Ik вне форума Ответить с цитированием
Старый 10.04.2010, 16:12   #2
POPOV
Форумчанин
 
Аватар для POPOV
 
Регистрация: 26.10.2007
Сообщений: 124
По умолчанию

Цитата:
Сообщение от DimOn4Ik Посмотреть сообщение
Помогите пожалуйста..Подскажите в чём ошибка? Пытаюсь с поля Name.Text добавить запись в БД Paradox

Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('INSERT INTO country (Name) VALUES (Name.Text)');

Query1.Open;
end;
Project1.exe raised exception class EDBEngineError with message 'Invalid field name.text'.Process stoped....
Попробуйте так:
Код:
Query1.SQL.Add('INSERT INTO country (Name) VALUES ("'+Name.Text+'")');
POPOV вне форума Ответить с цитированием
Старый 10.04.2010, 16:21   #3
DimOn4Ik
Форумчанин
 
Регистрация: 10.10.2009
Сообщений: 206
По умолчанию

Error creating cursor handle
DimOn4Ik вне форума Ответить с цитированием
Старый 10.04.2010, 16:24   #4
Google2010
Форумчанин
 
Регистрация: 16.02.2010
Сообщений: 316
По умолчанию

Цитата:
Query1.Open;
замени на
Код:
query1.ExecSql;
Google2010 вне форума Ответить с цитированием
Старый 10.04.2010, 16:26   #5
DimOn4Ik
Форумчанин
 
Регистрация: 10.10.2009
Сообщений: 206
По умолчанию

спасибо,вот только почему в табличке записи пропадают? (DBGrid)
DimOn4Ik вне форума Ответить с цитированием
Старый 10.04.2010, 16:34   #6
Google2010
Форумчанин
 
Регистрация: 16.02.2010
Сообщений: 316
По умолчанию

потому что он у тебя к этому же query подключен)))
Google2010 вне форума Ответить с цитированием
Старый 10.04.2010, 17:02   #7
DimOn4Ik
Форумчанин
 
Регистрация: 10.10.2009
Сообщений: 206
По умолчанию

ясно..спасибо!
DimOn4Ik вне форума Ответить с цитированием
Старый 10.04.2010, 19:43   #8
DimOn4Ik
Форумчанин
 
Регистрация: 10.10.2009
Сообщений: 206
По умолчанию

Код:
        Query1.Close;
    Query1.SQL.Clear;
    Query1.SQL.Add('INSERT INTO telephone  VALUES ("'+Name.Text+'","'+Lastname.Text+'")');
    query1.ExecSql;
скажите что делаю не правильно? Ошибка: Invalid parametr.'.

Последний раз редактировалось DimOn4Ik; 10.04.2010 в 20:29.
DimOn4Ik вне форума Ответить с цитированием
Старый 10.04.2010, 20:30   #9
POPOV
Форумчанин
 
Аватар для POPOV
 
Регистрация: 26.10.2007
Сообщений: 124
По умолчанию

Цитата:
Сообщение от DimOn4Ik Посмотреть сообщение
Код:
    Query1.Close;
    Query1.SQL.Clear;
    Query1.SQL.Add('INSERT INTO telephone (Name,Lastname) VALUES ("'+Name.Text+',"'+Lastname.Text+'")');
    query1.ExecSql;
скажите что делаю не правильно? Ошибка: Invalid use of keyword
Не там стоит запятая (выделил в цитате)+не хватает двойной ковычки:
Должно быть так:
Код:
..... ("'+Name.Text+'","'+Lastname.Text+'")');
Можно воспользоваться Params вместо того, чтобы перечислять параметры в самом запросе:
Код:
IBQuery1.SQL.Add('insert into T1 (DEVICE) Values (:dev)');
IBQuery1.Params.ParamByName('dev').Value:=Edit1.Text;

Последний раз редактировалось POPOV; 10.04.2010 в 20:32.
POPOV вне форума Ответить с цитированием
Старый 10.04.2010, 20:35   #10
POPOV
Форумчанин
 
Аватар для POPOV
 
Регистрация: 26.10.2007
Сообщений: 124
По умолчанию

DimOn4Ik Ё-маё, не успеваю написать ответ, как вы уже изменили своё сообщение ))

Сейчас у вас не указаны поля, в которые вы пытаетесь добавить данные:

INSERT INTO telephone (Name,Lastname) .......
POPOV вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

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

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
добавление данных через DBEdit в разные таблицы Kamelli БД в Delphi 6 31.07.2013 00:58
Добавление данных через поле формы porfonya Microsoft Office Excel 2 20.05.2009 20:20
Добавление записи через список в связанную таблицу(при связи с Access) megaten БД в Delphi 5 17.05.2009 15:57
Добавление в автозагрузку НЕ через реестр. Vi_russ Общие вопросы Delphi 2 07.12.2008 19:00
Добавление Удаление Редактирование через SQL beginner БД в Delphi 4 29.05.2007 17:52