|
RDA SQL Server CE и MS SQL Server 2000
|
|||
---|---|---|---|
#18+
Добрый день. Уважаемые гуру прошу у Вас помощи... Настраиваю синхронизацию между MS SQL Server 2000 и SQL Server CE Вот кусок кода который заливает таблицу на КПК в SQL Server CE Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8.
Насколько я понял таблицы"kkk" не должно быть в базе SQL Server CE, иначе он ругается говорит что "The localTableName parameter is already specified. [Table name=kkk]". Допустим таблицы kkk нет в базе SQL Server CE, тогда Pull проходит на отлично, далее для того чтоб получить изменения в этой таблице пишу такой кусок кода : Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8.
Изменения вычитываются и заливаются в MS SQL Server 2000, но проблема возникает когда нужно снова залить эту таблицу на КПК в SQL Server CE, т.к. таблица существует он ругается , я думал его обдурить типа drop table kkk , таблица грохается, но в таблице __SysRdaSubscriptions остаётся ссылка на имя этой таблицы и когда я ещё раз пытаюсь сделать Pull, у меня выскакивает Exception типа нельзя с таким же именем создавать ещё одну таблицу. PS. RdaBatchOption.BatchingOff ставил и RdaBatchOption.BatchingON и Вот собственно вопрос как загружать таблицу(ы) в SQL Server CE и потом получать все изменения которые были сделаны в ней, как по мне немного глупо было бы каждый раз заливать таблицу с новым именем...... :-\ ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2006, 11:43 |
|
RDA SQL Server CE и MS SQL Server 2000
|
|||
---|---|---|---|
#18+
Репликация с мобайл сиквелом очень мутная, хоть обычная, хоть с помощью RDA. С полгода назад я их "пощупал" и послал нафиг (тестил на SQL Server 2005 Mobile Edition - SQL CE 3.0). Плюс ко всему у меня еще возникли проблемы с правами доступа в IIS'е (ИМХО, абсолютно лиший слой) Я как-то занимался этим вопросом (и сейчас занимаюсь), правда, мне нужна заливка целых таблиц (а не отдельных записей). Для переливки данных с компа на PDA я юзаю System.Data.SqlClient (такая же сборка есть для десктопного фрэймворка), все супер. Для обратной связи я написал сокет-сервер на десктопе и прогу для отправки на PDA и организовал нечто вроде протокола передачи записей. ИМХО, гемора меньше, чем со стандартной репликацией. Хоть "слой" и самописный, но мне его менять проще, чем копаться в IIS'е :) P.S. Кстати, не использовали случайно Oracle 9i (или 10g) Lite? (на сей вопрос меня побудило название вашего хоста :)) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2006, 18:01 |
|
RDA SQL Server CE и MS SQL Server 2000
|
|||
---|---|---|---|
#18+
пытался я поставить и настроить Oracle 9i Lite, но что-то у меня не получилось :( Он даже гад не захотел по нормально поставиться. Если честно то у меня основная базе на оракле , но синхронизировать оракл с кпкшкой мне показалось что с этой задачей я могу возится не один месяц, по этому решил проще SQL Server2000 с ораклом соединить , а этот самый SQL Server2000 с SQL Server SE. Задачу я решил правда способ решения мне не сильно нравится но за не именеем лучшего......... я просто каждый раз на КПК грохай файл с базой и создаю его заново с нужными мне таблицами! И мне бы ещё хотелось всё таки может хотя бы куски кода как Вы реализовали "репликацию" (синхронизацию) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2006, 18:12 |
|
RDA SQL Server CE и MS SQL Server 2000
|
|||
---|---|---|---|
#18+
Я сейчас не дома, кода под рукой нет. Вот, здесь довольно подробно описано использование SqlClient. Его, кстати, можно использовать в обе стороны (выполнять SqlCommand и получать данные с пом. SqlDataReader). Чтобы протестировать (я тестировал на эмуляторе Windos Mobile 5.0), нужно "закредлить" эмулятор в Emulator Configuration Managere (все это в VS2005), т.к. соединение через SqlClient работает только по TCP/IP. http://www.devbuzz.com/content/zinc_sqlclient_remote_sql_server_pg1.asp ... |
|||
:
Нравится:
Не нравится:
|
|||
21.07.2006, 13:06 |
|
RDA SQL Server CE и MS SQL Server 2000
|
|||
---|---|---|---|
#18+
Если вкратце - я динамически составляю команду (SqlCommand для передачи данных на десктоп и SqlCeCommand для принятия данных на девайс) на insert, выбирая метаданные о столбцах с помощью метода GetSchemaTable класса SqlDataReader (в SqlCeDataReader такой, вроде, тоже есть). Сейчас все команды составляются только с помощью строк (потребовалось написать что-то вроде обертки для преобразования типов), но сегодня хочу поменять все под SqlParamaterы и SqlCeParameterы. Завтра-послезавтра напишу, получилось или нет :) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.07.2006, 13:13 |
|
|
start [/forum/topic.php?fid=27&msg=33869812&tid=1517930]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
162ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
others: | 240ms |
total: | 504ms |
0 / 0 |