Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сохранение таблицы на форме в таблицу базы данных 
:(
    Опции темы
tresda
Дата 2.2.2011, 07:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 27.6.2005

Репутация: нет
Всего: нет



Добрый день уважаемые мастера!!!

Такой вопрос у меня возник:
На форме лежат три edit'a (edit1, edit2, edit3) и компонент table с фиксированным количеством столбцов, но не с фиксированным количеством строк (т.е. после каждого сохранение поля будут подчищаться и снова забиваться и в следующем случае данных в таблице может быть больше/меньше). Также лежит button "Сохранить"  

Принцип работы:
Пользователь забивает данные в edit'ы и потом также заполняет таблицу различными данными, после чего жмёт кнопку "Сохранить"

В базе данных Access имеется таблица Dogovor с полями id, par1, par2, par3 и sps.

Соответственно при нажатии сохранить поле id генерируется автоматически, в поля par1, par2, par3 сохраняются значения из edit1, edit2, edit3.

Вопрос, как сохранить в последнее поле sps данные всей таблицы что забивалась на форме!??!

Спасибо заранее за оказанную помощь и надеюсь на Ваши подробные ответы!!!
PM MAIL ICQ   Вверх
Deniz
Дата 2.2.2011, 07:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1251
Регистрация: 16.10.2004
Где: Новый Уренгой

Репутация: 8
Всего: 44



Цитата(tresda @  2.2.2011,  09:19 Найти цитируемый пост)
компонент table с фиксированным количеством столбцов
а это что за компонент такой? StringGrid, DBGrid?
Если я правильно понял, то нужно все данные из "компонент table" записать в sps?
Тогда нужно сформировать подобие текстового файла с разделителями колонок и строк, и потом его записать в нужное поле БД.
Формат файла может быть разный, от txt до xml. Главное должна быть возможность сделать обратное преобразование.


--------------------
"Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с)
PM ICQ   Вверх
vovk
Дата 2.2.2011, 08:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 157
Регистрация: 28.2.2008

Репутация: 6
Всего: 6



Код

Table1.Append;
Table1.FieldValues['par1'] := Edit1.Text;
Table1.FieldValues['par2'] := Edit2.Text;
Table1.FieldValues['par3'] := Edit3.Text;
Table1.Post;



ой извинитеневнимательно прочитал вопрос

действительно что за таблица которая забивалась на форме, и формат поля sps

Это сообщение отредактировал(а) vovk - 2.2.2011, 08:33
PM MAIL   Вверх
tresda
Дата 2.2.2011, 08:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 27.6.2005

Репутация: нет
Всего: нет



Цитата

а это что за компонент такой? StringGrid, DBGrid?


Компонент может быть и DBGrid и StringGrid, он просто будет использован для внесения данных...

Цитата

Если я правильно понял, то нужно все данные из "компонент table" записать в sps?


Да, Вы всё абсолютно правильно поняли...  smile 

Цитата

Тогда нужно сформировать подобие текстового файла с разделителями колонок и строк, и потом его записать в нужное поле БД.

А операбельны-ли будут данные после попадания в таком виде в базу?!? Т.е. смогу ли я потом их считать или как-то обращаться к ним не ко всем скопом, а к примеру к значению находящемуся во втором столбце и третьей строке....
Цитата

 Главное должна быть возможность сделать обратное преобразование.

вот в том-то и вопрос...

Добавлено через 2 минуты и 14 секунд
а как быть с полем  Table1.FieldValues['sps'] := ????????????????
PM MAIL ICQ   Вверх
vovk
Дата 2.2.2011, 08:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 157
Регистрация: 28.2.2008

Репутация: 6
Всего: 6



Если вы планируете так использовать поле sps... 
 Вообщето как раз доступ к данным сортировка и тп, для этого и существуют базы данных, зачем тогда вообще БД?
PM MAIL   Вверх
tresda
Дата 2.2.2011, 10:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 27.6.2005

Репутация: нет
Всего: нет



скажите как мне уместить всю таблицу с внесёнными данными в одну ячейку sps и сделать запись в БД всех этих полей что были заполнены на форме...

Это сообщение отредактировал(а) tresda - 2.2.2011, 10:35
PM MAIL ICQ   Вверх
Antimol
Дата 2.2.2011, 10:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 28.7.2007
Где: Украина, Киев

Репутация: 4
Всего: 4



Если так уж нужно в одно поле все записывать, тогда можно создать массив значений и записать как блоб, но тогда доступ будет сразу к всем значениям одной записи в таблицы. И обработку нужно будет писать руками.

Можно создать еще одну таблицу, которая будет связана с первой таблицей в отношении один к многим. Во вторую таблицу войдут значения все что должны попасть в sps. тогда с помощью элементарных запросов можно выбрать все необходимые значения для каждой записи первой таблицы. Соответственно их можно отсортировать, показать необходимые - будет полный доступ.

--------------------
Лучшее спасибо это "+" к репутации.   Мой блог: ИНФОРМАТИЗАЦИЯ, и mirsovetov.net. Написание программ, исправление ошибок, статьи....
PM MAIL WWW ICQ   Вверх
tresda
Дата 2.2.2011, 13:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 27.6.2005

Репутация: нет
Всего: нет



>> Antimol
спасибо большое!!!  smile  я тоже уже практически к такому выводу пришёл....

буду пробовать... хотелось бы примерчиков посмотреть или код если у кого уже был такой опыт реализации....
PM MAIL ICQ   Вверх
Deniz
Дата 2.2.2011, 16:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1251
Регистрация: 16.10.2004
Где: Новый Уренгой

Репутация: 8
Всего: 44



Цитата(tresda @  2.2.2011,  15:45 Найти цитируемый пост)
хотелось бы примерчиков посмотреть или код если у кого уже был такой опыт реализации.... 
и примеров и кода куча, ищи в гугле по словам master-detail


--------------------
"Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с)
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

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


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0672 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.