powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / DataSet для разных источников данных
25 сообщений из 137, страница 3 из 6
DataSet для разных источников данных
    #39552154
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IFK,
Дык ты не беги и читай что тебе пишут.
skyANA тебе дал решение. Ты ноль ответа.
Нужно попроще, так и скажи.
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552161
IFK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
IFK
Гость
Petro123, угу, только я уже писал, что сетевая база для меня недоступна в режиме администрирования - я не могу наладить там репликацию и т.д. Могу только вытащить данные и записать туда данные используя непрозрачные ХПшки на стороне сиквела. Почему так - не спрашивайте и заодно не говорите, что это изврат - я это и сам знаю. :)

Мне нужно решить вопрос: как выполнить задачу обмена данными без репликации и прочих "правильных" методов?
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552165
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IFK,
Я читал его второй вариант. Это библиотека и не требует админа прав. Надо skyANA уточнить.
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552182
IFK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
IFK
Гость
Petro123, уточняю - у меня в сетевой базе вообще никаких прав, кроме как выполнить ХПшку, и то, удаленно. Через оснастку сиквела я вообще ничего не вижу.
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552184
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IFKВопрос в следующем: предположим, локальная база и сетевая база присоединились, создался датасет, содержащий копии таблиц из обоих баз. Подскажите, как лучше всего обменяться данными между этими таблицами и потом отправить измененные данные в сетевую базу? Или это заведомо хреновое решение?
Итого тебе дали 3 варианта:
- через переменные
- на кнопку в фоне синхронизировать
- библиотека MS
Вы отвлеклись на флуд, поэтому идите, работайте и изучите 3 п.п.
Удачи!
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552188
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IFKкроме как выполнить ХПшку, и то, удале
А что синхронизировать? В одну сторону?
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552203
IFK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
IFK
Гость
Petro123, да, в одну сторону: от локальной базы к сетевой.

Насчет пунктов: еще раз повторю, через переменные - это очевидный пункт, оставляю его на крайний случай. Второй пункт - не совсем понимаю: через кнопку или по событию - не важно, мне нужно знать принцип. Можно через те же переменные, но хотелось бы что-то более изящное, какими-то SQL-конструкциями, я не знаю. Вопрос был: возможно ли это в одном датасете, и если да, можно ли пример апдейта одной таблицы из другой внутри одного датасета. Все.
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552237
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IFKPetro123, да, в одну сторону: от локальной базы к сетевой.
Может в другую))). Если в сетевой на запись нет доступа?
2. Отстаньте от датасета. Нету там ничего чтобы писать в хранимку сиквела.
Дайте пример ХП сетевой для записи.
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552262
IFK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
IFK
Гость
Petro123IFKPetro123, да, в одну сторону: от локальной базы к сетевой.
Может в другую))). Если в сетевой на запись нет доступа?
2. Отстаньте от датасета. Нету там ничего чтобы писать в хранимку сиквела.
Дайте пример ХП сетевой для записи.

Нет, от локальной к сетевой.
Блин, я все понял - нихрена так не сработает, я не смогу подключить таблицы сетевой базы к приложению. Т.е. данные для отправки в сетевую базу все равно должны проходить через ХП. А значит, только перебором по записям и через параметры ХП-шки. СПАСИБО! ))))
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552268
IFK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
IFK
Гость
Petro123IFKPetro123, да, в одну сторону: от локальной базы к сетевой.
Может в другую))). Если в сетевой на запись нет доступа?
2. Отстаньте от датасета. Нету там ничего чтобы писать в хранимку сиквела.
Дайте пример ХП сетевой для записи.

Тут вы правы - от сетевой к локальной тоже нужно. Перефразирую вопрос: масс-аплоад данных из таблицы в таблицу в одном датасете возможен? Что-то типа:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
        Dim Q_cmd As New SqlCommand, Q_connection As New SqlConnection("Data Source=ServerSQL;Initial Catalog=QA;Integrated Security=True")
        Dim Q_data_1 As New SqlDataAdapter("EXEC API_GetReportDataRowset '502','<params></params>'", Q_connection)
        Dim Q_dataset As New DataSet(), Q_1 As DataTable

        Q_cmd.Connection = Q_connection
        Q_cmd.Connection.Open()
        Q_dataset.DataSetName = "test"

        Q_data_1.Fill(Q_dataset, "Q_1")
        Q_1 = Q_dataset.Tables("Q_1")



А потом перегнать данные из Q_1 в таблицу локальной базы "QA_1":

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
        Dim SqlCeCommand As New SqlServerCe.SqlCeCommand, SQLCe_connection As New SqlServerCe.SqlCeConnection("Data Source=test.sdf;Persist Security Info=False")

        SqlCeCommand.Connection = SQLCe_connection
        SqlCeCommand.Connection.Open()
        SqlCeCommand.CommandText = "SELECT field_1, field_2 FROM Q_1 INTO QA_1"
        SqlCeCommand.CommandType = CommandType.Text
        SqlCeCommand.ExecuteNonQuery()



Возможно ли такое?
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552351
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IFKпотом перегнать данные из Q_1 в таблицу локальной базы "QA_1":
И затереть работу за неделю?
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552354
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IFK,
Офф лайн работа это очень Дорого.
А вам бы всё халява сразу датасетами.
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552364
IFK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
IFK
Гость
Petro123, не совсем затереть, можно добавить проверки, но это потом. Хотелось бы вначале вообще понять методику работы для такой задачи, идею, так сказать. :) Поэтому и прошу пример.
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552373
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IFK,
У меня голова не работает для глупых задач.
И так понятно, что нужно в цикле перебирать чтобы не затереть.
Ты никогда файлы с флешки что ли не копировал?
Удачи!
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552399
IFK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
IFK
Гость
Petro123, ну не знаю, насколько глупая задача. А без цикла? Каким-нибудь SQL-м "UPDATE/INSERT" можно?
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552430
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IFK,
Новичку лучше цикл.
Для sql нужно админ права чтобы базы увидели друг друга.
Можно датаСет в xml и в хранимку.
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552442
IFK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
IFK
Гость
Petro123, хорошо, хочется еще получить ответ на вопрос "можно ли перелить данные из одной таблицы в датасете в другую", например:

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
        Dim Q_cmd As New SqlCommand, Q_connection As New SqlConnection("Data Source=server01;Initial Catalog= QA;Integrated Security=True")
        Dim Q_data_Users As New SqlDataAdapter("EXEC API '504','<params></params>'", Q_connection)
        Dim Q_dataset As New DataSet("test"), Q_Users As DataTable

        Q_cmd.Connection = Q_connection
        Q_cmd.Connection.Open()

        Q_data_Users.Fill(Q_dataset, "Q_Users")
        Q_Users = Q_dataset.Tables("Q_Users")

        Dim SqlCeCommand As New SqlServerCe.SqlCeCommand, SQLCe_connection As New SqlServerCe.SqlCeConnection("Data Source=localcomp\localDB.sdf;Persist Security Info=False")
        Dim GS_data As New SqlServerCe.SqlCeDataAdapter("SELECT * FROM GS_data", SQLCe_connection), GS_data_loaded As DataTable

        SqlCeCommand.Connection = SQLCe_connection
        SqlCeCommand.Connection.Open()

        SqlCeCommand.CommandText = "SELECT field1, field 2 FROM '" & Q_Users.ToString & "' INTO test"
        SqlCeCommand.CommandType = CommandType.Text
        SqlCeCommand.ExecuteNonQuery()



Пробовал - не срабатывает, но и ошибку не выдает. Что не так?
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552452
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IFK
Код: vbnet
1.
2.
3.
SqlCeCommand.CommandText = "SELECT field1, field 2 FROM '" & Q_Users.ToString & "' INTO test"
        SqlCeCommand.CommandType = CommandType.Text
        SqlCeCommand.ExecuteNonQuery()


Намеренно ломай запрос до ошибки.
Программист?
Потлм упрощай запрос до вставки с коммитом
Select 1 from table into ...
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552782
IFK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
IFK
Гость
Petro123, прежде, чем ломать, вопрос - такая конструкция вообще должна сработать внутри датасета или это заведомо неверно?
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552826
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IFK,
Сам должен попробовать и тут рассказать.
Это наша работа (с)
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552925
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IFKХотелось бы вначале вообще понять методику работы для такой задачи, идею, так сказать.
Идея простая: операции, что ещё не переданы в сетевую БД, передавать туда при появлении возможности.

А реализация сильно зависит от характера этих самых операций.
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39552986
IFK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
IFK
Гость
skyANAIFKХотелось бы вначале вообще понять методику работы для такой задачи, идею, так сказать.
Идея простая: операции, что ещё не переданы в сетевую БД, передавать туда при появлении возможности.

А реализация сильно зависит от характера этих самых операций.

Это ясно. Характер операций - обычная работа с плоскими таблицами. Обмен данными с сетевой базой должен быть пакетным, не в on-fly режиме.
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39553055
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IFK,

"обычная работа с плоскими таблицами", как у Вас всё просто.

А у каждого пользователя исключительно свой набор этих плоских таблиц, или он общий и с одними и теми же данными могут работать несколько человек?
Если последнее, то по какому принципу предполагается разрешать конфликтные ситуации?

Люди диссертации пишут на тему алгоритмов репликации данных в распределенных системах, а Вы думаете побыстрому датасет прикрутить

Но если у Вас всё просто, то постарайтесь описать задачу подробнее. Ведь всё просто.
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39553063
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В соседней ветке вон Блокчейн советуют: 20866975
...
Рейтинг: 0 / 0
DataSet для разных источников данных
    #39553369
IFK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
IFK
Гость
skyANAIFK,

"обычная работа с плоскими таблицами", как у Вас всё просто.

А у каждого пользователя исключительно свой набор этих плоских таблиц, или он общий и с одними и теми же данными могут работать несколько человек?
Если последнее, то по какому принципу предполагается разрешать конфликтные ситуации?

Люди диссертации пишут на тему алгоритмов репликации данных в распределенных системах, а Вы думаете побыстрому датасет прикрутить

Но если у Вас всё просто, то постарайтесь описать задачу подробнее. Ведь всё просто.

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

Ну, и ясное дело, есть справочные таблицы, которые просто обновляются из сетевой базы при каждом подключении и пользователем не изменяются. Здесь тоже используются номера версий, которые обновляются при модификации записей в сетевой базе - чисто для снижения трафика. В локальной базе эти таблицы недоступны для изменения пользователем.
...
Рейтинг: 0 / 0
25 сообщений из 137, страница 3 из 6
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / DataSet для разных источников данных
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]