Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
У меня есть унаследованная база данных, в которой диапазон первичных ключей находится в диапазоне от 1 до 500 млрд, хотя самая большая таблица порядка 10000 записей. Таблиц среднее кол-во - порядка 100, много связей между таблицами. Можно ли выполнить какое-то преобразование над БД, чтобы привести эти значения к диапазонам от 1 и выше, без промежутков? Может ли тут помочь бэкап-рестор? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 16:25 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
Ключик, нет. И вообще это бред ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 16:29 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
пристрелите тролля тупорылого Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 16:30 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
Ключик, Имхо овчинка выделки не стоит - тр...ся нужно долго и осторожно, а толку - чуть. P.S. B/r не спасет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 16:31 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
Ключикпривести эти значения к диапазонам от 1 и выше, без промежутков?Когда коту нечем заняться, он занимается этим самым. DarkMasterа толку - чуть.Про кота понятно, после манипуляций "это самое" блестит. А тут толк-то какой? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 16:36 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
Мне нужно с минимальными усилиями написать интерфейс к имеющейся БД. Думал сделать один автогенератор на все таблицы и дергать его при вставке записей. Но тут придется вставлять начиная с очень больших значений ключа. Делать кучу генераторов нет никакого желания, там не так много данных. Клиент - браузер, обращается через rest-api к серверу. Или все-таки нужно сделать кучу генераторов? Да, первичные ключи - это double precision. Т.е. мне их по-любому нужно преобразовывать в строки, чтобы привязывать в javascript'e на клиенте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 16:42 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
КлючикДа, первичные ключи - это double precision. уверен? в базе прямо так и есть create table ...( id double precision not null, ... ? КлючикДумал сделать один автогенератор на все таблицы а что, в базе генераторов нет, совсем? эта база не от Firebird/InterBase? КлючикТ.е. мне их по-любому нужно преобразовывать в строки, чтобы привязывать в javascript'e на клиенте. адский ад. не взлетит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 16:49 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
kdv, да, даблы как ключи ( вот нашел свой топик ) . Все никак руки не доходили до этой БД, а сейчас полез - там 10 генераторов на всю базу, но ни один даже не приближается к этим гигантским значениям. Думаю, генерили на клиенте, триггеров нет совсем, алгоритм генерации не известен, разработчик тоже. Могут ли быть проблемы с использованием одного генератора? Т.е. я нахожу макс значение во всех таблицах, завожу генератор и использую его для всех таблиц (записей-то не много). И как насчет того, чтобы перед вставкой находить max(id) + 1, тогда без триггеров. конфликты вставки (они не должны быть частыми), думаю, можно разруливать на сервере и запускать транзакцию повторно. Насколько это плохо? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 16:58 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
КлючикИ как насчет того, чтобы перед вставкой находить max(id) + 1, тогда без триггеров. конфликты вставки (они не должны быть частыми), думаю, можно разруливать на сервере и запускать транзакцию повторно. Насколько это плохо? Это даже не смешно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 17:01 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
Ключик, что так сложно создать по генератору на таблицу? Сколько там таблиц в БД? И таки убери double из первичных ключей это идиотизм ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 17:02 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
Ключик> kdv, да, даблы как ключи (вот нашел свой топик < http://www.sql.ru/forum/1143060/baza-dannyh-s-tipom-dannyh-pervichnogo-klucha-double>) . Ты б сделал бы базе Reverse Engineering в IBExpert'е да показал бы народу её скрипт создания... -- Vladimir A.Bakhvaloff Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 17:06 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
Шавлюк Евгений Это даже не смешно А в чем-проблема-то? Можно, конечно, поднять на сервере атомарный счетчик по каждой таблице, при старте считать max(id) + 1 и увеличивать его атомарно при обращениях Симонов Денис, 100 таблиц. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 17:09 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
zirra Ты б сделал бы базе Reverse Engineering в IBExpert'е да показал бы народу её скрипт создания... -- Vladimir A.Bakhvaloff А как reverse engenering тут поможет-то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 17:11 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
гоните его накуй, это трололо обычное. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 17:15 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
КлючикМне нужно с минимальными усилиями написать интерфейс к имеющейся БД.интерфейс будет только твой или еще какой-то старый(фнаследованный)? КлючикДумал сделать один автогенератор на все таблицы и дергать его при вставке записей.Не вижу тут проблем. КлючикТ.е. мне их по-любому нужно преобразовывать в строкисмысл? Сделай один генератор и нехай он растет от нуля вниз, ну или от -1000000000 вверх. есть такая конструкция: триггер на инсерт дергает генератор, а потом конструкция insert... returning отдает клиенту обратно значение после вставки строки, чтобы клиент например мог что-то там отрефрешить или перепозиционировать что-то куда-то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 17:21 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
Ключик> А как reverse engenering тут поможет-то? А %рен его знает... Никто ж ещё не видел, что там у тебя нарисовано-то конкретно... -- Vladimir A.Bakhvaloff Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 17:23 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
Ключик..... 1.Думаю, генерили на клиенте, триггеров нет совсем, алгоритм генерации не известен, разработчик тоже. 2.Могут ли быть проблемы с использованием одного генератора? Т.е. я нахожу макс значение во всех таблицах, завожу генератор и использую его для всех таблиц (записей-то не много). 3.И как насчет того, чтобы перед вставкой находить max(id) + 1, тогда без триггеров. конфликты вставки (они не должны быть частыми), думаю, можно разруливать на сервере и запускать транзакцию повторно. 1. И как мне кажется самое главное (ну мне так кажется) Если клиента не будешь переписывать, то все остальное не имеет смысла 2. Нет 3. Это не вариант к рассмотрению ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 17:23 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
Ivan_Pisarevsky, ну да, ты прав, я данные на клиента в json передаю, там же по стандарту должно влезть даже большое число >есть такая конструкция: триггер на инсерт дергает генератор, а потом конструкция insert... returning отдает клиенту обратно значение после вставки строки а вот тут я не понял. я из jdbc данные получаю, он возвращает только кол-во записей, к которым применилась операция sql Всем кто читает топик: клиент будет другой, под веб ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 17:32 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
Ivan_PisarevskyDarkMasterа толку - чуть.Про кота понятно, после манипуляций "это самое" блестит. А тут толк-то какой? Как какой? Агромаднейший опыт занятия неизвестной науке фигней ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 17:36 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
Ключикчтобы перед вставкой находить max(id) + 1, тогда без триггеров во-первых, max(id) будет не быстрым. во-вторых, два клиента дадут одинаковый max(id) в третьих, обрабатывать такие ошибки и переповторять действие - это онанизм. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 18:34 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
Ключик... клиент будет другой... Ну тогда всё намного проще Разрабатываешь структуру новой БД Пишешь клиента Перегоняешь данные из старой БД в новую Возможно не так легко и быстро как хотелось-бы но это реально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2015, 19:01 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
КлючикУ меня есть унаследованная база данных, в которой диапазон первичных ключей находится в диапазоне от 1 до 500 млрд, хотя самая большая таблица порядка 10000 записей. Таблиц среднее кол-во - порядка 100, много связей между таблицами. Можно ли выполнить какое-то преобразование над БД, чтобы привести эти значения к диапазонам от 1 и выше, без промежутков? Может ли тут помочь бэкап-рестор? формируй уникальное число без повтора! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2015, 13:36 |
|
||
|
Можно ли в Firebird какими-то стандартными средствами уменьшить значения первичных ключей?
|
|||
|---|---|---|---|
|
#18+
wamacoформируй уникальное число без повтора!Фраза понравилась, есть в ней уникальность без повтора! Ключика вот тут я не понял. я из jdbc данные получаю, он возвращает только кол-во записей, к которым применилась операция sqlДока, "наше фсё"! insert returning отдает обратно клиенту набор тех полей, что ты указал в этой кляузе. Те же данне из селекта получать умеешь? вот и тут аналогично. КлючикВсем кто читает топик: клиент будет другой, под вебЕсли дабл мозолит глаз, то перегони его в int64, делов-то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2015, 13:43 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38910255&tid=1562961]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
166ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
| others: | 303ms |
| total: | 562ms |

| 0 / 0 |
