Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP? Не так давно пришлось переносить базу с версии 10.50.4042.0(2016?) на 10.0.5538.0(2014?) "Прямого" переноса - т.е. бекап+ресторе - не получилось - несовпадение по версиям бекапа. Делалось посредством ДТС. Прошло нормально - данные перелились, триггеры позднее накатил скриптом. Все работает, но... Временами в поле типа TIMESTAMP пишутся дуплицируемые значения. Победить это Я могу прогнав х32000 пустых вставок в таблицу. Может кто то понятно пояснить где спрямить и сразу поправить timestamp sequence? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 10:55 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
PinkCat, я человек тёмный, но что вы вкладыаете в "дуплицирует" а то гугл меня шлёт в генетику ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 11:20 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
TIMESTAMP - глобальное свойство СЕРВЕРА. И уникально, тоже только в пределах сервера. Это простая последовательность номеров обновлений в рамках всего сервера. Не надо было закладываться на уникальность. Можно попытаться обновить все TIMESTAMP на х32000 вниз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 11:25 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
aleks222TIMESTAMP - глобальное свойство СЕРВЕРА. И уникально, тоже только в пределах сервера. Это простая последовательность номеров обновлений в рамках всего сервера. Не надо было закладываться на уникальность. Можно попытаться обновить все TIMESTAMP на х32000 вниз. прям таки сервера ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 11:26 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
PinkCatМожет кто то понятно пояснить где спрямить и сразу поправить timestamp sequence?Спрямить можно перестав использовать timestamp как нечто уникальное. Ибо он предназаначен не для этого и уникальность значений не гарантируется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 11:39 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
TaPaK, Выборка SELECT RowTS, Count(*) FROM [dbo].[Defaults] Group BY RowTS HAVING COUNT(*) > 1 Где RowTS поле типа TIMESTAMP не пуста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 11:50 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
PinkCat, и как dts перетянул вам timestamp? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 11:55 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
PinkCatНе так давно пришлось переносить базу с версии 10.50.4042.0 (2016?) на 10.0.5538.0 (2014?) SQL2008R2 -> SQL2008 http://sqlserverbuilds.blogspot.com/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 11:58 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
TaPaK, А нормально перетащил. RowTS генерируется и используется в триггерах чтобы связать запись в dbo.Defaults с другими таблицами. Структура и названия таблиц на момент определения dbo.Defaults - неизвестны. Отсюда и извращение со связыванием. Проблема в том, что похоже генератор TIMESTAMP не обновился - выпадают те же значения, которые уже использовались. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 12:16 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
komrad, Извини, но тонкости версий мне не особо интересны. Где посмотреть точную версию сервера - нашел, а уж какой он - интересует достаточно мало. Существенным было то, что бэкап+ресторе не совместились - пришлось гнать по ДТС. А теперь - непонятные проблемы ползут... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 12:22 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
PinkCatПроблема в том, что похоже генератор TIMESTAMP не обновился - выпадают те же значения, которые уже использовались. Что выдает @@DBTS и SELECT MAX(RowTS) FROM [dbo].[Defaults] ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 12:33 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
PinkCatTaPaKи как dts перетянул вам timestamp? А нормально перетащил. Вам мягко намекают на то, что настоящий timestamp нельзя ни задать ни изменить. По этому узнайте последнее выданное значение timestamp в базе Код: sql 1. И если результат не похож на то что у вас "дуплицируется", то показывайте скрипт создания таблицы и проблемное поле в ней. А если похож, то тем более. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 12:39 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
TaPaKPinkCat, я человек тёмный, но что вы вкладыаете в "дуплицирует" а то гугл меня шлёт в генетику с этим словом в генетику - это еще не самы плохой вариант ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 12:51 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
PinkCatTaPaK, А нормально перетащил. RowTS генерируется и используется в триггерах чтобы связать запись в dbo.Defaults с другими таблицами. Структура и названия таблиц на момент определения dbo.Defaults - неизвестны. Отсюда и извращение со связыванием. Проблема в том, что похоже генератор TIMESTAMP не обновился - выпадают те же значения, которые уже использовались.А у этого поля после переноса точно тип TIMESTAMP? Закрадываются сомнения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 12:52 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
iapPinkCatTaPaK, А нормально перетащил. RowTS генерируется и используется в триггерах чтобы связать запись в dbo.Defaults с другими таблицами. Структура и названия таблиц на момент определения dbo.Defaults - неизвестны. Отсюда и извращение со связыванием. Проблема в том, что похоже генератор TIMESTAMP не обновился - выпадают те же значения, которые уже использовались.А у этого поля после переноса точно тип TIMESTAMP? Закрадываются сомнения. вставить в timestamp вообще нельзя, про то и вопрос автори как dts перетянул вам timestamp? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 12:59 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
iiyama, PRINT @@DBTS = 0x0000000000006D6A Max(RowTS) = 0x000000000003290E ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:01 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
Guf, Вам мягко намекают на то, что настоящий timestamp нельзя ни задать ни изменить. ----- Я, как бы, это знаю. показывайте скрипт создания таблицы и проблемное поле в ней. ----- А поможет? Я вот думаю что нет. Следующим вопросом будет вопрос об триггерах. И там тоже нет ничего критичного. Критично то, что текущее значение счетчика не соответствует состоянию базы. И Я не знаю как его поправить... Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:06 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
PinkCatiiyama, PRINT @@DBTS = 0x0000000000006D6A Max(RowTS) = 0x000000000003290E ещё раз. timestamp это монотонно возрастающий идентификатор в рамках базы. Править max нельзя(может можно прям в db_info ). Это поле предназначено для работы именно как rowversion, и все остальные извращения это личные проблемы:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:08 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
iap, А у этого поля после переноса точно тип TIMESTAMP? ----- Да, тип поля сохранился при переносе - иначе у меня бы все давно сломалось. Сейчас перепроверил - все как должно быть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:09 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
TaPaK, вставить в timestamp вообще нельзя, про то и вопрос ----- DTS - справляется с реплецированием поля. Но, повторюсь, на работоспособность системы не перенос или неправильные значения в стампах никак не влияют. Оно критично только на момент вставки при подключенных триггерах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:13 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
PinkCatiap, А у этого поля после переноса точно тип TIMESTAMP? ----- Да, тип поля сохранился при переносе - иначе у меня бы все давно сломалось. Сейчас перепроверил - все как должно быть. да, скорее всего это выглядит как Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. при этом dbts сдвигается от текущего в той базе куда вставляете, и решение на уникальность timestamp откровенная ересь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:16 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
TaPaK, может можно прям в db_info ----- Вот что-то подобное Я и ищу... А про то, что НЕЛЬЗЯ - Я знаю... но ведь и дуплицироваться - не должно... а имеет место быть... Так что нестандартная ситуация требует нестандартных мер... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:17 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
PinkCatTaPaK, может можно прям в db_info ----- Вот что-то подобное Я и ищу... А про то, что НЕЛЬЗЯ - Я знаю... но ведь и дуплицироваться - не должно... а имеет место быть... Так что нестандартная ситуация требует нестандартных мер... прям в db_info это ещё большее извращение. Продолжайте пустые вставки на разницу.... зы у вас какая-то проблема со словом дубль? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:21 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
автор не должно... а имеет место быть... конструкция select into никому ничего не должна ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:24 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
TaPaK, решение на уникальность timestamp откровенная ересь. ----- Возможно. Я ведь не ДБА. Решаю задачу в том виде в каком ее дают. А задача была следующая: - есть запись в таблице dbo.Defaults - для нее должна быть парная и единственная запись в таблице которая будет определена позднее - таблиц которые являются парными - полсотни и их количество увеличится по мере обновления документации партнером. Есть у ДБА подходящее решение на такой случай? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:27 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
PinkCat, Тогда странно. Для решения здесь и сейчас можно сделать так: Код: sql 1. 2. 3. 4. 5. 6. 7. В хелпе пишутIs a data type that exposes automatically generated, unique binary numbers within a database. ... Note: Duplicate rowversion values can be generated by using the SELECT INTO statement in which a rowversion column is in the SELECT list. We do not recommend using rowversion in this manner. Если у вас не так, и вы можете это повторить, то надо писать на коннект ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:28 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
автор- есть запись в таблице dbo.Defaults - для нее должна быть парная и единственная запись в таблице которая будет определена позднее update я так понимаю у вас запрещён как класс ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:30 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
TaPaK, зы у вас какая-то проблема со словом дубль? ----- Дубль - это когда Я сам сделаю, а когда что-то стороннее - то это стороннее... Да, вопрос - вставки обязательно в ту же таблицу или можно тупо вбить таблицу с полем, прогнать счетчик и все это дропнуть? Т.е. стампер он на таблицу или на базу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:33 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
ну и для сквозного ключа guid наверное более подходящее поле ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:33 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
PinkCatTaPaK, зы у вас какая-то проблема со словом дубль? ----- Дубль - это когда Я сам сделаю, а когда что-то стороннее - то это стороннее... Да, вопрос - вставки обязательно в ту же таблицу или можно тупо вбить таблицу с полем, прогнать счетчик и все это дропнуть? Т.е. стампер он на таблицу или на базу? вам тоже запрещено хелп читать? авторДубль - это когда Я сам сделаю, а когда что-то стороннее - то это стороннее... no comment ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:35 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
TaPaK, update я так понимаю у вас запрещён как класс ----- Да. Там однократное определение значений и потом многократное использование. Апдейта - нет - Я просто помру на его изготовлении. Есть удаление и новая вставка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:37 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
PinkCatTaPaK, update я так понимаю у вас запрещён как класс ----- Да. Там однократное определение значений и потом многократное использование. Апдейта - нет - Я просто помру на его изготовлении. Есть удаление и новая вставка. архитектор гениален. Страдайте ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:39 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
TaPaK, ну и для сквозного ключа guid наверное более подходящее поле ----- Вот когда придет крутой ДБА и быстренько все поменяет... а после этого так же быстренько встанут три завода... вот тогда будет понятно мое желание использовать неизменяемое поле. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:40 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
Guf, Если у вас не так, и вы можете это повторить, то надо писать на коннект ----- Эти условия мне известны и они у меня не нарушаются. За код - спасибки. Остается только выяснить стамп табличный или базовый? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:42 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
TaPaK, вам тоже запрещено хелп читать? ----- Могу Я задать вопрос над которым надо подумать перед тем как дать ответ? Вопрос простой: когда можно использовать @IDENTITY вместо @IDENTITY_INSERT и когда попытка использования @IDENTITY_INSERT вместо @IDENTITY там же даст ошибку? :) Хелпу Я читаю и довольно много... Вот сейчас надо решать что делать - нужна фабрика типа System.Data.Common.DbProviderFactory Для Оракла. Старого - 8.1 и 10.2. Есть - для последних 11.0, 12.0 - но они не работают с ранними версиями серверов. А вот для реализации надо реализовать, согласно документации, 4 метода. один из которых public static System.Data.Common.DbProviderFactory GetFactory(System.Data.Common.DbConnection pDbConnection) в документации - описан, а вот в реализации от мелкомягких его нет. Надо думать как выкрутится из ситуации и заставить работать все, включая отсутствующий метод. Это аккурат моя задачка. А базы - базы так - от случая к случаю делаются. Доки смотрятся, но не так как у ДБАшников. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 13:56 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
PinkCat, авторА базы - базы так - от случая к случаю делаются. Доки смотрятся, но не так как у ДБАшников. 12 слово в хелпе про rowversion, не успеете утомится. По остальному: ваш архитектор наверное очень заразен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 14:00 |
|
||
|
Когда MS SQL дуплицирует значения в поле типа TIMESTAMP?
|
|||
|---|---|---|---|
|
#18+
TaPaK, По остальному: ваш архитектор наверное очень заразен ----- Проще - медики признали его невменяемым. Вот теперь Я разгребаю то, что он наваял - там 2Гб спагетти-кода - и попутно делаю всякие мелочи типа импорта в системы (разные) клиентских данных в разных форматах и последующее использование этих данных опять таки в одной их нескольких наших систем. Пока еще вроде не свихнулся... ну не окончательно, по крайней мере. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2018, 14:11 |
|
||
|
|

start [/forum/topic.php?all=1&fid=46&tid=1689114]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
88ms |
get tp. blocked users: |
2ms |
| others: | 222ms |
| total: | 392ms |

| 0 / 0 |
