Форум: "Базы";
Текущий архив: 2003.03.17;
Скачать: [xml.tar.bz2];
ВнизДобавление данных в TClientDataSet из другого DataSet. Найти похожие ветки
← →
Alex9801 (2003-02-25 14:58) [0]Как в TClientDataSet добавить данные, находящиеся в другом DataSet такой же структуры?
ClientDataSet.Insert / InsertRecord частично решают задачу, но добавленные записи имеют статус usInserted и Provider сразу начнет их добавлять в базу, но это не нужно, т.к. они там уже есть. Т.е. Как в TClientDataSet добавить данные из другого DataSet, чтобы добавленные записи имели статус usUnmodified без физического их добавления в базу?
← →
Clickmaker (2003-02-25 16:03) [1]вообще-то провайдер не должен добавлять их в базу, пока не скажешь ApplyUpdates, а до этого он просто кэширует их на клиенте (св-во Delta). И смысл добавления в CDS, если не добавлять потом их в базу ?
← →
Alex9801 (2003-02-25 16:32) [2]Придется объяснить еще раз.
Есть список товаров, которых хранится в некоторой таблице в БД и в ClientDataSet на клиенте. Когда юзер руками добавляет/изменяет/удаляет 1..n записей, а затем вызывает ApplyUpdates, то все работает нормально. Теперь нужно откопировать все товары из одной категории в другую. Причем не переместить, а скопировать.
Т.е. в результате выполнения некоторого запроса в таблицу будет добавлено энное количество записей. Это оформляется в виде отдельной хранимой процедуры, которая помимо добавления делает еще массу полезных вещей, а в конце возвращает добавленные записи в виде набора данных.
Вопрос: Как в ClientDataSet добавить записи из другого DataSet c одновременным сбосом для них статуса из usInserted в usUnmodified. Т.е. чтобы при вызове ApplyUpdates эти данные не добавлялись в БД, т.к. они там уже есть.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.03.17;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c