Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / SQL Server, ODBC, timestamp / 13 сообщений из 13, страница 1 из 1
16.06.2004, 19:57:03
    #32564434
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Server, ODBC, timestamp
Конфликт сохранения записи при работе с таблицами SQL Server 2000, связанными через ODBC.
Иногда решается добавлением в таблицу поля типа timestamp.
Иногда нет. Почему?

Вопросы:
1) Что такого делает это поле, что конфликт сам разруливается?
2) Зачем при коннекте через ODBC создается несколько connections с одной машины? Причем их может быть несколько на одну и ту же таблицу.
...
Рейтинг: 0 / 0
17.06.2004, 11:22:14
    #32564970
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Server, ODBC, timestamp
Не... Так дело не пойдет.
Этот вопрос задают в форуме довольно часто и хотелось бы, чтобы был фак на эту тему.
...
Рейтинг: 0 / 0
27.12.2004, 15:53:30
    #32846368
мшсещырф
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Server, ODBC, timestamp
Темный Конфликт сохранения записи при работе с таблицами SQL Server 2000, связанными через ODBC.
Иногда решается добавлением в таблицу поля типа timestamp.
Иногда нет. Почему?

Вопросы:
1) Что такого делает это поле, что конфликт сам разруливается?
2) Зачем при коннекте через ODBC создается несколько connections с одной машины? Причем их может быть несколько на одну и ту же таблицу.

Темный, ты пошто поток забросил?
...
Рейтинг: 0 / 0
29.12.2004, 13:13:21
    #32849525
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Server, ODBC, timestamp
мшсещырф Темный Конфликт сохранения записи при работе с таблицами SQL Server 2000, связанными через ODBC.
Иногда решается добавлением в таблицу поля типа timestamp.
Иногда нет. Почему?

Вопросы:
1) Что такого делает это поле, что конфликт сам разруливается?
2) Зачем при коннекте через ODBC создается несколько connections с одной машины? Причем их может быть несколько на одну и ту же таблицу.

Темный, ты пошто поток забросил?
Кхм... Какой такой поток?
...
Рейтинг: 0 / 0
29.12.2004, 13:34:17
    #32849586
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Server, ODBC, timestamp
авторКхм... Какой такой поток?

типа этот.
если я что не так называю - скажи как надо.
...

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

ЗЫ
Это я к тому, что пусть бы было место про таймстамп более или менее
внятное в полноте своего охвата...

Темный - ты автор, тебе и карты :))
...
Рейтинг: 0 / 0
29.12.2004, 13:39:24
    #32849606
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Server, ODBC, timestamp
...
Рейтинг: 0 / 0
29.12.2004, 13:42:46
    #32849619
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Server, ODBC, timestamp
Темный BOL: timestamp

понял.
тогда было бы прилично, наверно, удалить все это
(поток топик или как его там звать надо)
как не несущее полезной информации.
:))
...
Рейтинг: 0 / 0
29.12.2004, 13:50:23
    #32849646
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Server, ODBC, timestamp
Низафто :) Вот он всплыл, может кто-нить ответит
...
Рейтинг: 0 / 0
29.12.2004, 13:53:27
    #32849659
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Server, ODBC, timestamp
ТемныйНизафто :) Вот он всплыл, может кто-нить ответит
на какой вопрос-то ответа ждешь?
...
Рейтинг: 0 / 0
29.12.2004, 13:57:00
    #32849674
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Server, ODBC, timestamp
На оба :) Но второй интереснее.
...
Рейтинг: 0 / 0
29.12.2004, 15:00:53
    #32849872
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Server, ODBC, timestamp
ТемныйНа оба :) Но второй интереснее.
на второй вопрос на форуме отвечалось много раз.
поиск наверно, по "линкованным таблицам" вести.
приблизительно ответ будет такой.

повторное подключение организовывается для того, чтобы гарантировать
выполнимость MoveNext на на открытом рекордсете.
( То есть в момент, когда MoveNext понадобился, подкючение не заблокировано фетчингом для другого набора данных).

Это общее поведение для линкованных таблиц, и распространяется оно не только на ОДБС- подключения, а вообще на все виды линкованных таблиц.
По этой же причине размножаются подключения в АДП-проектах.

применительно к первому вопросу
так ты как будто сам только что показал, как БОЛ сыскать...
:))
таймстамп - поле специального вида - 64-битное целое, фактически глобально нумерующее апдейты/инсерты по крайней мере для тех таблиц, в которых присутствует поле этого типа. Сервер берет на себя ответственность самостоятельно производить изменение этого поля при любом изменении записи, и гарантирует, что изменение значения поля типа таймстамп будет произведено.
В стратегии оптимистической блокировки - проверка ранее вычитанного значения этого поля с текущим для записи с указанным ключем -это самый эффектвный, по существу единственный универсально поставляемый сервером "встроенный" механизм проверки факта неизменности записи с момента ее последнего чтения.
В АДО-рекордсете есть динамическое свойство "Update Criteria", которое как раз управляет механизмом обнаружения конфликта записи. Одно из значений - adCriteriaTimeStamp=3 - как раз и заставляет использовать timestamp как метку синхронизации.
При наличии такого поля в таблице клиентскому слоя как правило хватает ума использовать его для решении вопроса о синхронизации.
однако для решения вопроса об обновляемости набора данных этого может быть недостаточно, поскольку в решении вопроса о том, удалена запись или нет, клиентский слой предпочитает опираться на первичный ключ. И, если для линкованной таблицы ключ не указан в момент линковки, и ОДБС не может определить его самостоятельно, то, скорее всего, набор окажется необновляемым независимо от присутствия поля таймстамп.


ЗЫ
что умел - сказал.
пусть другой скажет лучше.

ЗЫ2
может и для меня чего хорошего напишут...
:))
...
Рейтинг: 0 / 0
29.12.2004, 15:06:07
    #32849892
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Server, ODBC, timestamp
Буковок много. Вечером почитаю внимательнее.
НО! По второму вопросу: 2 соединения - это еще ничего. Но когда их 4 - это уже перебор.
И про АДП мне совсем не понравилось.
...
Рейтинг: 0 / 0
29.12.2004, 15:18:37
    #32849946
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Server, ODBC, timestamp
ТемныйБуковок много. Вечером почитаю внимательнее.
НО! По второму вопросу: 2 соединения - это еще ничего. Но когда их 4 - это уже перебор.
И про АДП мне совсем не понравилось.

Применительно к ОДБС - фактически подключения кешируются самим ОДБС.
Количество фактически открытых тобой наборов в данный момент может (и как правило) быть меньше.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / SQL Server, ODBC, timestamp / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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