|
Создание базы данных
|
|||
---|---|---|---|
#18+
чччДпоставляется инструмент миграции с версии на версию миграция - это вообще другой вопрос, я его тут не касаюсь совершенно. Там как раз допустимо все что угодно, лишь бы облегчить миграцию с N на N+1 (базы или сервера) как для разработчика, так и для юзера. Скрипты, шмикты, хоть квантовый компьютер. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 19:24 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
kdvчччДпоставляется инструмент миграции с версии на версию миграция - это вообще другой вопрос, я его тут не касаюсь совершенно. Там как раз допустимо все что угодно, лишь бы облегчить миграцию с N на N+1 (базы или сервера) как для разработчика, так и для юзера. Скрипты, шмикты, хоть квантовый компьютер. Я упомянул мигиацию только потому, что ради нее всякие dll от ibExpert таскаем, выполняющие скрипты. Которых (dll) почему-то боятся с собой таскать (см. выше). ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 19:27 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
kdvэто не минус, а бессмысленное действо, если для приложения требуется конкретная версия ФБ. Да ну? А если клиент (или пьяный интегратор) запустил старый инсталлятор, в котором болванка для 2.1, а стоит 2.5? Проблемы потом разгребать? В моем случае хоть на родной ODS работать будет, потом просто версию моего ПО обновят и проблемы как не было. kdvЕсли мы делаем для 2.5, и только для 2.5, можно создать из скрипта, только для этого придется вызвать isql. Проще скопировать болванку файла БД. Скрипты создания БД обычно используются для - проверки создания базы из скрипта (тут бывают и косяки метаданных и глюки isql) - проверки скрипта при переводе базы с версии N на N+1 - сравнения скрипта с предыдущими версиями для генерации изменений - создания "чистой" БД для копирования данных из одной БД в другую Не знаю :) Я скрипты использую именно для создания новых баз. "Сравнением метаданных", получением "Скрипта расхождений" и т.п. я не занимаюсь, слава богу, наверно потому, что болванки не использую И isql я не пользуюсь для этого, давно есть отлаженный свой класс, который, к тому же, еще кое-какие фишки поддерживает, но это другая история. isql я вообще использую в основном только для коннекта к удаленным базам на плохом инете, чтобы ИБЕ не запускать, но это тоже другая история. kdvопять двадцать пять... Для чего это, и пример приведите пожалуйста. Основной случай - домен для поля-идентификатора терминала. Для сети все терминалы имеют уникальный номер. Все таблицы с данными (не считая одинаковых справочников), которые участвуют в репликации, имеют это поле, которое заполняется (почти всегда) автоматически из этого домена. (у таких таблиц ПК минимум из двух полей - TERMINAL_ID+Таблица_ID) kdvИ эти пункты 2 и 3 никакой завязки на скрипт не имеют. В том числе записи из этих INSERT'ов, т.ч. имеют, в этих пунктах много чего нужного разворачивается скриптами. kdvКак только выходит новая версия, люди сразу начинают использовать фишки новой версии Да, все хотят так делать, это логично, я тоже хочу. Но наступил момент, когда обновить серевера сразу всем очень проблематично. Постепенно - да (благо, я давно пишу версию сервера БД в таблицу версий установленных программ на местах, теперь пригодится) - с запретом на создание базы (и вообще на запуск) на версии сервера меньше X.Y, опять же. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 19:33 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
kdvболее сомнительный, чем скрипт (потому что скрипт надо закатать в приложение, и выполнить оттуда Ох и сложно текстовый файл прочитать (как в моем случае, я тупо скрипты в папку SQL кладу рядом с .exe) или еще откуда-то достать, вариантов масса. Это уж, как раз, совсем не проблема. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 19:38 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovЭто очень печально слышать, что в новых версиях Firebird появляются только новые фишки, а ни производительность, ни надёжность не улучшаются. Ну почему же улучшаются. Но не всё можно улучшить автоматом, иногда надо переписывать алгоритмы с использованием новых фич чтобы улучшить производительность. Например, в некоторых местах при грамотном применении оконные функции могут существенно поднять производительность. Или другой пример, замена самописных велосипедов UDF на встроенные функции. А вот тебе примерчик по надёжности, правда алгоритмов. До 2.5 FB не поддерживал параметризированных EXECUTE STATEMENT. Собственно поддержка универсальности 2.1-3.0 это значит не использовать всего того? что нового и удобного появилось: новый EXECUTE STATEMENT, SIMILAR TO, PSQL функции, оконные функции, PSQL пакеты, нативный BOOLEAN и многое другое. Так можно дойти и до того чтобы оставить в БД только таблицы и работать через ORM. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 19:42 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
YuRock, имхо, твой случай, когда клиент может работать с фб 2.1, 2.5 и 3.0 - мягко говоря, вырожденный. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 19:45 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
YuRockА если клиент (или пьяный интегратор) запустил старый инсталлятор, в котором болванка для 2.1, а стоит 2.5? если приложение ориентировано на 2.5, оно должно сообщить о проблеме. если база уже есть, болванку никакого смысла нет копировать. YuRock(у таких таблиц ПК минимум из двух полей - TERMINAL_ID+Таблица_ID) зачем это сделано доменом? не тяни коня, приведи такое описание create domain. Опять вырывать клещами все приходится. Гостайна, чтоль? Хочешь объяснить, так ОБЪЯСНИ! YuRockВ том числе записи из этих INSERT'ов, т.ч. имеют, в этих пунктах много чего нужного разворачивается скриптами. см. выше. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 19:51 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
Симонов ДенисТак можно дойти и до того чтобы оставить в БД только таблицы Ну это явно уже вывод неверный. Я ж не уменьшаю поддерживаемый функционал :) Придет время - я обновлю и начну PSQL функции использовать, давно хочу, и пакеты. EXECUTE STATEMENT и SIMILAR TO я никогда не использовал, мне в моих задачах не надо, а что касается "EXECUTE STATEMENT" - я вообще считаю, что нужно стараться обходиться без него, и у меня получается. Почему разброс такой большой? Потому, что на 2.5 я вообще не переходил - не видел смысла. Мне толку не было было. И сейчас считаю, что правильно сделал. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 19:52 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
господа, еще пара сообщений с пространными объяснениями, без конкретики, и я попрошу модераторов удалить нахрен этот топик. Задолбало уже. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 19:52 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovЭто очень печально слышать, что в новых версиях Firebird появляются только новые фишки, а ни производительность, ни надёжность не улучшаются.Лишь бы ляпнуть, как обычно ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 19:54 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
kdvесли приложение ориентировано на 2.5, оно должно сообщить о проблеме. Старый инсталлятор рассчитан на 2.1, а стоит 2.5. Где я неясно выразился? Конечно же и приложение из этого "старого инсталлятора" "ориентировано" на 2.1, и болванка в нем. А стоит 2.5. И проверять при этом версию сервера не надо? kdvзачем это сделано доменом? Мне удобно kdvприведи такое описание create domain. Опять вырывать клещами все приходится. Гостайна, чтоль? Код: sql 1. 2.
Что тут объяснять? В процессе инсталла интегратор вводит в эдит номер терминала, который ему сказали в центр. офисе, и программа перед созданием базы из скрипта меняет @@TERMINAL_ID@@ на 1234, например. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 20:00 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
YuRock... EXECUTE STATEMENT и SIMILAR TO я никогда не использовал, мне в моих задачах не надо, а что касается "EXECUTE STATEMENT" - я вообще считаю, что нужно стараться обходиться без него, и у меня получается. ... Фигасе аскетизм... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 20:01 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
kdvгоспода, еще пара сообщений с пространными объяснениями, без конкретики, и я попрошу модераторов удалить нахрен этот топик. Задолбало уже. Боюсь, что я конкретнее не смогу уже. Не пойму, что ты хочешь, возможно. Как конкретнее объяснить, что данные попадают в поле из DEFAULT-значения домена, если не указывать это поле при INSERT? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 20:04 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
kdvСобственно, с приложением можно поставлять базу разными способами Я именно это и пытался объяснить. И еще момент - скрипт для создании базы в любом случае нужен - если не в инсталляторе, то как минимум в скрипте, который собирает инсталлятор, болванку-то надо создавать как-то. Мне лично болванка не удобна по многим причинам, из них привычка и отсутствие материального смысла это менять - одни из них. Но я вполне ясно понимаю, что какое-нибудь приложение с базой embedded (и не обязательно) может быть гораздо удобнее поставлять с болванкой. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 20:16 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
YuRock...скрипт для создании базы в любом случае нужен - если не в инсталляторе, то как минимум в скрипте, который собирает инсталлятор, болванку-то надо создавать как-то... Трэш какой-то... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 20:23 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
YuRockБоюсь, что я конкретнее не смогу уже. Не пойму, что ты хочешь, возможно. я хотел пример create domain из этого скрипта, и insert с какими-то там хрен знает данными. Код: sql 1.
да офигеть какой животрепещущий домен. Я понял, спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 20:58 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
спасибо всем участникам дискуссии. Особенно YuRock. Я теперь понял, что - действительно, при установке или первом запуске приложения создавать БД "из скрипта" нет никакого смысла - что создание БД из скрипта бывает обусловлено какими-то историческими закидонами разработчика БД Извините, если кому показалось слишком прямолинейным. p.s. можно было и не прописывать этот default в доменах, т.к. ИД приложения или "терминала" обычно известен при запуске этого самого приложения. Хуже того, он может быть изменен с течением времени (а домен тогда тоже придется менять). Короче, фигня на постном масле. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 21:05 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
всем спасибо, все смеются. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 21:28 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
hvladЛишь бы ляпнуть, как обычно Разве это я сказал, что в использовании новых версий Firebird с приложениями, не использующими его новые фишки, нет смысла?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 21:35 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
kdvт.к. ИД приложения или "терминала" обычно известен при запуске этого самого приложения. Угу. Интересно, откуда. kdvХуже того, он может быть изменен с течением времени Нет, конечно. Это же данные в пк. Это целостность бд. kdvможно было и не прописывать этот default в доменах Можно, конечно, и хранить его где-то отдельно, и бояться, чтобы в этом где-то его случайно не изменили. И писать обязательно оттуда в записи всех таблиц вручную. А я его нигде не храню, специально. Кроме как в этом домене. Один раз при запуске только получаю его селектом из системной таблицы. Мне так нравится. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 23:27 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
kdv> Рустам, это ты? Я, я, Кемска Волост, я, я. (с) P.S. Топик зачетный. МП - зачет сразу два раза. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2017, 23:31 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovhvladЛишь бы ляпнуть, как обычно Разве это я сказал, что в использовании новых версий Firebird с приложениями, не использующими его новые фишки, нет смысла?..А кто и где это сказал ? И какая связь с твоим постоянным нытьём ? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2017, 01:02 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
YuRockИнтересно, откуда. а откуда он известен при установке приложения??? YuRockНет, конечно. Это же данные в пк. Это целостность бд я имею в виду, почему нельзя default 50 поменять на default 60? Целостность от этого не пострадает. YuRockА я его нигде не храню, специально. Кроме как в этом домене. да конечно, закатал в default, и успокоился. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2017, 01:03 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
Гаджимурадов РустамЯ, я, Кемска Волост, я, я. (с) я знал, что ты оценишь :-) Гаджимурадов РустамP.S. Топик зачетный спасибо, я старался. Хотя это стоило неимоверных психических усилий. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2017, 01:05 |
|
Создание базы данных
|
|||
---|---|---|---|
#18+
kdvа откуда он известен при установке приложения??? Из телефонной трубки обычно. Админ центральной базы знает только, какой ид свободен и должен быть. kdv почему нельзя default 50 поменять на default 60? Целостность от этого не пострадает. Новые записи станут мусором. Вообще вся база. kdvзакатал в default, и успокоился.Ну да. Его не меняют. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2017, 01:20 |
|
|
start [/forum/topic.php?fid=40&msg=39416498&tid=1561676]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
56ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
others: | 18ms |
total: | 182ms |
0 / 0 |