Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

добавление записи в БД


Съедобный ©   (2008-12-16 07:54:00) 

Поставил на форму 3 компонента: Query, DataSource и DBGrid. Связал их свойства между собой. В сетку выводятся данные из БД через Query.
Подскажите пожалуйста как мне добавить запись в БД. Я делаю:
Query1.Insert;
Query1.Fields[2].AsString :='Тест';
Query1.Post;

Мне выдаётся ошибка: Query1: Cannot modify a read-only dataset.
Что то не перевёл в режим редактирования. А что?

Спасибо


съе   (2008-12-16 10:44:00) [1]

сергей13 ненайду указанного тобой


Sergey13   (2008-12-16 10:13:00) [2]

> [14] съе   (16.12.08 10:08)

Ты пишешь пример к разделу в хелпе, который я указал?


Медвежонок Пятачок   (2008-12-16 10:09:00) [3]

я верю.


съе   (2008-12-16 10:08:00) [4]

медвежок запусти код и проверь работоспособность....
у меня не пашет


Медвежонок Пятачок   (2008-12-16 09:58:00) [5]

все верно. все так и должно быть


съе   (2008-12-16 09:50:00) [6]

Без сортировки - всё замечательно


съе   (2008-12-16 09:49:00) [7]

Правдо...никак не могу понять и не найду ничего общего. Сортирую...
procedure TForm1.Button1Click(Sender: TObject);
begin
 Query1.RequestLive :=true;
 Query1.SQL.Clear;
 Query1.SQL.Add('SELECT * FROM baza.DB ORDER BY tb');
 Query1.Active :=true;
end;
У меня стоит  Query1.RequestLive :=true;
После сортировки удаляю
procedure TForm1.Button4Click(Sender: TObject);
begin
 Query1.RequestLive :=true;
 Query1.Delete;
end; - у меня не удаляется. Пишет ошибку Table is read only. Хотя  Query1.RequestLive :=true; Менял во всех сочетаниях true - false ВСЁ РАВНО ПОСЛЕ СОРТИРОВКИ ВЫВОДИТ ОШИБКУ. Неполучается


съе   (2008-12-16 09:11:00) [8]

начинающий 5 в твоем случае работает, применительно к моей проге - нет


Sergey13   (2008-12-16 09:03:00) [9]

> [6] съе   (16.12.08 08:49)

F1 + Updating a read-only result set + See also


начинающий 5   (2008-12-16 08:53:00) [10]

все таки надо почитать


начинающий 5   (2008-12-16 08:50:00) [11]

Query1.RequestLive :=true;
Query1.SQL.Clear;
Query1.SQL.Add('SELECT * FROM baza.DB ORDER BY tb');
Query1.Active :=true;


съе   (2008-12-16 08:49:00) [12]

после сортировки таблица становится read-only и код Query1.RequestLive :=true; не влияет никак. Что может быть


съе   (2008-12-16 08:43:00) [13]

Смотрите...я выполняю запрос на сортировку
 Query1.SQL.Clear;
 Query1.SQL.Add('SELECT * FROM baza.DB ORDER BY tb');
 Query1.Active :=true;
У меня сортируются данные. А когда я хочу редактировать запись, у меня вылазиит всё таже ошибка - read-only, хотя мой код по нажатию кнопки
procedure TForm1.Button3Click(Sender: TObject);
begin
 Query1.RequestLive :=true;
 Query1.Edit;
 Query1.Fields[2].AsString :='ТЕСТ';
 Query1.Post;
end;
до сортировки выполняется верно
после запроса - ...........
удаляется там всё


начинающий 5   (2008-12-16 08:21:00) [14]


> съе   (16.12.08 08:19) [2]
> а редактировать как?

Query1.edit;


> и удалять как?

Query1.delete;

совет дня "ПОЧИТАЙ ЛИТЕРАТУРЫ"


съе   (2008-12-16 08:19:00) [15]

и удалять как?


съе   (2008-12-16 08:19:00) [16]

а редактировать как?


начинающий 5   (2008-12-16 07:59:00) [17]

requestlive=true


Наверх

Титульная страница Поиск, карта сайта Написать письмо