Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Delphi: Базы данных и репортинг > Запись данных из DbGridEh в базу |
Автор: KAMIKAZE 7.10.2011, 01:26 |
Доброго времени суток, Хочу записать любой(с разными полями, структурой) xml в базу. Для этого использую связку: XMLTransform, ClientDataSet, DataSource ну и DbGridEh. Загружаю xml и файл трансформации в XMLTransform, далее из него отдаю XMLData в ClientDataSet и данные сразу же отображаются без проблем в DbGridEh. XML может быть любой, т.е. файлы трансформации подкидываются в программу и они тоже разные, для отображения в DbGridEh это не проблема, но как эти данные записать в базу? Скажем я просто хочу указать MySQL или MSSQL сервер, базу в нем и название таблицы в которую писать данные, а дальше уже автоматом создать поля в таблице на основе данных в DbGridEh и записать их. Вопрос как это сделать? Наставьте на пусть истинный. |
Автор: Данкинг 7.10.2011, 01:33 |
Что именно сделать? Подключиться к серверу? Создать таблицу? |
Автор: KAMIKAZE 7.10.2011, 01:33 |
Без подключения как бы не записать. Вообще прочитали бы по внимательнее мой пост. Таблицу конечно же создавать самому, ведь xml у меня динамический, я не знаю какие там поля будут. |
Автор: Данкинг 7.10.2011, 01:38 |
Прочитал ещё три раза. Что конкретно требуется - всё равно не понял. |
Автор: KAMIKAZE 7.10.2011, 01:59 |
Значит вы мне ничем не поможете. |
Автор: superVad 7.10.2011, 09:30 |
Просто бери и делай. И спрашивай по ходу возникающие вопросы. |
Автор: KAMIKAZE 7.10.2011, 10:42 |
Ну вот на этом и остановился. Как можно записать из DbGridEh в определенную таблицу? Бежать по всем Row и формировать Insert into запрос? А может есть другие способы по гуманнее ![]() |
Автор: superVad 7.10.2011, 10:49 |
В гриде данных нету - данные в датасете к которому подключен грид. Какую определенную таблицу? Я так понял, что таблицы то у тебя и нет еще в базе. Надо ее создать сначала. |
Автор: Данкинг 7.10.2011, 10:57 | ||
Да, а как ещё. Только учти, что
|
Автор: Vas 7.10.2011, 12:44 |
Бежи по своему ClientDataset, формируй SQL запросы и выполняй их. И будут твои данные в бд. Процедуру сделай универсальную, передай ей датасет и создай на основании него SQL запросы, ну и выполни их. Что сложного то? |
Автор: KAMIKAZE 7.10.2011, 12:53 |
Спасибо понятно, но я просто думал может есть универсальное уже в клиентдатасете т.е. я указываю куда записать, напишу универсальную процедуру. |
Автор: KAMIKAZE 7.10.2011, 13:29 |
... |
Автор: KAMIKAZE 8.10.2011, 23:08 |
ююю |