Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Агрегирующая функция для строк и дат. (Oracle)


Страницы:   1 2

ANB ©   (2005-05-17 15:20:00) 

Кто может подсказать, какими агрегирующими функциями можно получить контрольные суммы для строк и дат ?
Даты я сделал так :
sum (Emt.data + Emt.Vremya / 86400
           - to_date ('01.01.2000', 'DD.MM.YYYY')
          )
Строки пока через ASCII(), но так проверяется только первый символ. Нашел хэш MD5, но он только из функции работает, а ее добавлять в рабочую базу как то не очень.


ANB   (2005-05-23 10:50:00) [1]


> Страшная эта вещь - исторически
- да уж. Как приятно писать новый проект, и как неприятно потом с ним же бороться, когда опыта наберешься :)))


Anatoly Podgoretsky   (2005-05-23 10:42:00) [2]

Страшная эта вещь - исторически.


ANB   (2005-05-23 10:36:00) [3]

Для интерисующихся - ответ :
dbms_utility.Get_Hash_Value ()


ANB   (2005-05-18 09:46:00) [4]


> Sergey13 ©   (18.05.05 09:42) [17]
- а я сравниваю. Порешали - решили маловато. Возникла идея контрольных сумм. В принципе, для чисел - работает прекрасно. Чуть хуже с датой, особливо когда переезжали на нормальный формат хранения (в старых версиях дата лежала отдельно, а время - отдельно, а потом их объединили).


> Anatoly Podgoretsky ©   (18.05.05 09:40) [16]
- как всегда. Исторически сложилось. :)))


Sergey13   (2005-05-18 09:42:00) [5]

2[14] ANB ©   (18.05.05 09:31)
>- а дальше берем и дрючим программиста
Это побочное действие. Дальше восстанавливаем из бэкапа и продолжаем думать. 8-)

Почему недостаточно сравнить просто количество записей например?


Anatoly Podgoretsky   (2005-05-18 09:40:00) [6]

Чтой то у вас там не у нас.


ANB   (2005-05-18 09:39:00) [7]


> из бэкапа схема разворачивается на тестовом сервере
- нерационально. У нас есть дампы по 30-50 Гб. Когда развернется - отъест почти вдвое больше места. Иметь две копии - просто негде.


ANB   (2005-05-18 09:31:00) [8]


> Дальше что?
- а дальше берем и дрючим программиста, за то, что плохо апргрейд написал или сломал его :)))

> Делается бэкап перед патчами
- и сравнивать придется - запись - запись. 200 миллионов.


Reindeer Moss Eater   (2005-05-17 21:52:00) [9]

СТОИТ ЗАДАЧА - ПОСТАВИТЬ ПРОВЕРКУ НА АВТОМАТ.

И что дальше?
Добустим проверка показала, что изменились 16 миллионов записей из общего количества 17 миллионов записей.
Дальше что?


Val   (2005-05-17 18:03:00) [10]

Я вам и говорю вроде по теме - не надо этого делать - не слушаете. Деньги на на что уйдут.
Делается бэкап перед патчами, из бэкапа схема разворачивается на тестовом сервере, на который из рабочей схемы делается дблинк - вот вам нормальне данные до ваших премудростей с реструктуризацией.


ANB   (2005-05-17 17:46:00) [11]


> Val ©   (17.05.05 17:43) [10]
во млин. Ты по сабжу можешь чего нибудь сказать ?
НУ НАДО. МНЕ ЗА ЭТО ДЕНЬГИ ПЛАТЯТ. СТОИТ ЗАДАЧА - ПОСТАВИТЬ ПРОВЕРКУ НА АВТОМАТ.


Val   (2005-05-17 17:43:00) [12]

так тестируйте на здоровье. зачем заниматься делом сервера и дба, объясните?


ANB   (2005-05-17 17:24:00) [13]


> Val ©   (17.05.05 17:13) [8]
если таблица называлась ECF001 с русскими полями, а потом ее переделали в стандартный вид, то что с ней еще делать, кроме как удалить.
Все нормально работает. Стоит задача тестирования этой работы. На всякий случай.


Val   (2005-05-17 17:13:00) [14]

[7], в котором перенесли данные, не вяжется с [5], в котором их не с чем сравнивать, по-моему.
Если вы меняете структуры таблиц то нет особой необходимости их удалять, если же вы меняете структуру БД и данные из некоего монолита разбрасываете по другим таблицам, то разбрасывайте себе спокойно. Оракл(надеюсь и дба тоже) знает, как все восстановить после подобных патчей.


ANB   (2005-05-17 17:03:00) [15]


> Одно мне непонятно - зачем таблицы удалять у людей?
- не нужна больше. Данные в другую перенесли.


Val   (2005-05-17 17:01:00) [16]

Круто как все...хеш, контрольные суммы..
Одно мне непонятно - зачем таблицы удалять у людей?


ANB   (2005-05-17 16:33:00) [17]

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


Sergey13   (2005-05-17 16:27:00) [18]

Я так вообще не понял чего тебе надо. 8-)
Что за патч БД? В чем выражается (не)корректность поля? Почему просто значение поля не сравнить?


ANB   (2005-05-17 16:16:00) [19]

И все ??? Никто не знает ???


ANB   (2005-05-17 15:33:00) [20]

Надо из каждого поля получить некую контрольную сумму, чтобы потом можно было ее сравнить после патча БД, для проверки его корректности.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо