Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.05.24;
Скачать: CL | DM;

Вниз

Подскажите СУБД   Найти похожие ветки 

 
Медвежонок Пятачок ©   (2009-03-14 02:28) [80]

При чем здесь это...

<Цитата>


ну проверь например наличие триггера.
запрос напиши.


 
turbouser ©   (2009-03-14 02:29) [81]


> Медвежонок Пятачок ©   (14.03.09 02:26) [77]

Что было в поставке - то и обновляется...

> Медвежонок Пятачок ©   (14.03.09 02:26) [77]
>
> Ну почему же... Поверьте, с ораклами и прочими мсскл-ми
> горааааздо сложней в подобном случае будет.
>
> У меня как-то как раз наоборот.

Да? Не верю ©


 
Медвежонок Пятачок ©   (2009-03-14 02:30) [82]

Единственный аргумент - апелляция к сомнительному личному опыту.

Расскажи про свой несомнительный опыт.
Я так и не услышал о количесстве твоих инсталляций.


 
Медвежонок Пятачок ©   (2009-03-14 02:31) [83]

Что было в поставке - то и обновляется...

Нужен новый триггер.
Ты пока не знаешь, если ли он или его нет.
Или может он есть, но инвалидный и требует удаления\создания или пересоздания.

твои действия?


 
turbouser ©   (2009-03-14 02:37) [84]


> Медвежонок Пятачок ©   (14.03.09 02:31) [83]
>
> Что было в поставке - то и обновляется...
>
> Нужен новый триггер.
> Ты пока не знаешь, если ли он или его нет.
> Или может он есть, но инвалидный и требует удаления\создания
> или пересоздания.
>
> твои действия?

У меня сделано так : сравнение структур с эталонной бд и изменение существующей, разумеется с бекапами. (+много еще чего. ноу хау :) )


 
Медвежонок Пятачок ©   (2009-03-14 02:40) [85]

У меня сделано так : сравнение структур с эталонной бд и изменение существующей, разумеется с бекапами. (+много еще чего. ноу хау :) )

Ну так все таки.
Допустим у юзера появилась новая эталонная бд.
В ней есть новый триггер.
Есть текущая бд.
И надо чтобы триггер появился и в ней.

Причем неизвестно, какой именно сервер стоит у клиента.


 
turbouser ©   (2009-03-14 02:50) [86]


> Медвежонок Пятачок ©   (14.03.09 02:40) [85]

Еще раз... последний... можно сделать свой сетап...


 
Медвежонок Пятачок ©   (2009-03-14 02:54) [87]

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

Как я понял, ты все же понял, что метаданные в разных версиях разные, и не все так просто с обновлением структуры бд.
Но признать это нет сил.


 
Тын-Дын ©   (2009-03-14 02:57) [88]


> Медвежонок Пятачок ©   (14.03.09 02:30) [82]
> Единственный аргумент - апелляция к сомнительному личному
> опыту.Расскажи про свой несомнительный опыт.Я так и не услышал
> о количесстве твоих инсталляций.


Ты думаешь, я с тобой меряться буду?

Ты все аргументы пропустил мимо ушей, а своих так и не привёл.


> turbouser ©   (14.03.09 02:50) [86]


Изначально разговор идёт об однопользовательской СУБД.

Аргументы ПРОТИВ MSAccess и ЗА FB Embedded:

1.
MS Jet может отсутствовать на ПК (а таких очень много). Придётся тащить дистрибутив для установки.
FBE не нужно устанавливать. он будет входить в состав дистрибутива приложения
2.
MS Jet может  быть не той версии. Что делать в этом случае?
FBE всегда нужной версии и не зависит ни от каких обновлений и изменений ПО на ПК.

3.
MS Jet - не полноценная СУБД.
FB - полноценная однопользовательская СУБД.

Я так и не увидел аргументов против этих высказываний.


 
Медвежонок Пятачок ©   (2009-03-14 02:59) [89]

можно сделать свой сетап...

чем твой сетап поможет?
волшебством?

при изначальной  установке оказалось, что у юзера стоит иб.
инсталляция выполнила ддл скрипт и создала базу иб.

твой сетап содержит эталонную базу фб, а сервера фб у юзера нет.

что дальше?


 
Медвежонок Пятачок ©   (2009-03-14 03:00) [90]

Изначально разговор идёт об однопользовательской СУБД.

Ты это сам придумал, или это явно указано в вопросе автора?


 
turbouser ©   (2009-03-14 03:02) [91]


> Медвежонок Пятачок ©   (14.03.09 02:54) [87]

Только наивный студент мог так подытожить сию дискуссию.
Что поделаешь... Адью.


 
Тын-Дын ©   (2009-03-14 03:04) [92]


> Медвежонок Пятачок ©   (14.03.09 03:00) [90]
> Изначально разговор идёт об однопользовательской СУБД.Ты
> это сам придумал, или это явно указано в вопросе автора?
>


Сам придумал. А что?

ПО крайней мере, у автора не вызвала отторжения эта мысль.

Но ты так и не ответил на [88].

PS.
А вот при необходимости FBE легко и без напрягов переводится на FB Server.


 
Медвежонок Пятачок ©   (2009-03-14 03:07) [93]

Ты думаешь, я с тобой меряться буду?

Я тебе не предлагал меряться.
Я хотел лишь выяснить, имеешь ли ты хоть сколько-нибудь существенный опыт распространения приложений на фб наружу.

по ходу дела не имеешь.
а весь опыт работы внутри корпоратива он конечно сам по себе ценен несомненно. Но есть области, где его просто недостаточно.

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


 
Тын-Дын ©   (2009-03-14 03:08) [94]


> Это опять таки из собствнного опыта.работал в команде где
> были люди более продвинутые в разработке чем я, и тем не
> менее всю жизнь они разрабатывали под сервера, которые находились
> под боком. Когда условия работы несколько поменялись, и
> разрабатываемое ПО стало уходить наружу, то они просто раз
> за разом садились в лужу по самое нехочу каждый раз когда
> приходилось обновлять что-то.


О чём это говорит?
Об ошибках проектирования или о недостаточной квалификации? Или о том и другом одновременно?


 
Медвежонок Пятачок ©   (2009-03-14 03:08) [95]

Но ты так и не ответил на [88].

ТРИ раза сказал, что длл не поменяется, но запросто может поменяться одс у файла данных.

Но ты это упорно игнорируешь


 
Тын-Дын ©   (2009-03-14 03:09) [96]

Это говорит скорее о неправильном технологическом процессе в фирме.


 
Тын-Дын ©   (2009-03-14 03:09) [97]


> ТРИ раза сказал, что длл не поменяется, но запросто может
> поменяться одс у файла данных.


Почему он должен поменяться?


 
Медвежонок Пятачок ©   (2009-03-14 03:10) [98]

О чём это говорит?
Об ошибках проектирования или о недостаточной квалификации? Или о том и другом одновременно?


Они были примерно такого же мнения о возможных проблемах деплоя как и ты.
"Какие такие могут быть проблемы?!" - вот их искреннее мнение на этот счет.


 
Медвежонок Пятачок ©   (2009-03-14 03:11) [99]

Почему он должен поменяться?

Юзер поставил сервер.
И сделал бэкап\рестор.
Да, да, я знаю. В твоем приложении это должно делаться простым копированием файла.

Но юзер взял и сделал бэкап\рестор.


 
Медвежонок Пятачок ©   (2009-03-14 03:13) [100]

Что поделаешь... Адью.

Да да. Очень обяжешь, если исчезнешь из обсуждения.


 
Тын-Дын ©   (2009-03-14 03:16) [101]


> Юзер поставил сервер.И сделал бэкап\рестор.Да, да, я знаю.
>  В твоем приложении это должно делаться простым копированием
> файла.


Если это не предусмотрено (резервное сохранение/восстановление) средствами сервера, то такая ситуация решается административно.


 
Тын-Дын ©   (2009-03-14 03:17) [102]

Ладно, может с утра ещё кто подключится к дискуссии и внесёт свежую струю...


 
Медвежонок Пятачок ©   (2009-03-14 03:20) [103]

Если это не предусмотрено (резервное сохранение/восстановление) средствами сервера,

Какая именно версия сервера не предусматривает бэкапы?

то такая ситуация решается административно.

Административно можно решать  вопросы внутри своего ОАО, ООО, и гаражного кооператива.

Я выше описал реальную ситуацию. ООО, две тетки две персоналки и студент раз в месяц. Ну еще генеральный, который в тетрис умеет играть.

Ага. щас мы там административно порешаем все вопросы. и пофик, что я один, а этих ООО сотни и тысячи.


 
sniknik ©   (2009-03-14 04:38) [104]

> Чем отличается полноценная СУБД от прочих?
> Тем, что движок этой СУБД
> 1) отделён от данных
> 2) отделён от пользователя
> 3) поддерживает транзакции и откат транзакций как вперёд, так и назад.

> Поддерживаются ли эти условия в MS Jet для Access?

> 1) отделён от данных
отделен даже больше чем Embedded, у аксесс данные идут через COM объект (фактически аналог сервера) у Embedded через dll которая рядом с программой (при статическом связывании фактически часть ее, и вроде как в этом случае в одном адресном пространстве с программой).

> 2) отделён от пользователя
а как же, точно также как и Embedded, файл базы лежит на той же машине... :) но у аксесс есть возможность (впрочем никогда, никем не используемая) удалить базу от пользователя, даже на другую машину... а для доступа использовать интерфейсы обьекта RDSServer.DataFactory/DataControl

> 3) поддерживает транзакции и откат транзакций как вперёд, так и назад.
что значит вперед/назад? впрочем неважно. поддерживается до 5 уровней вложенности транзакций. решай сам достаточно это или нет.

> MS Jet может отсутствовать на ПК
может
> (а таких очень много).
за все время встречал 3 раза... один раз, целая партия в 20 машин с установленной спец виндой (98) без DCOM. и соответственно всего от чего зависит. но это такая специальная винда на которой очень много чего не работает (возможно даже и FB). т.к. когда это выяснили была чуть ли не паника ни одна из нужных прог не работала, не только наша. (покупали новую)
второй, когда только только XP появилась ктото поставил ее с пиратки, ну и хотя она и говорила (в реестре было прописано)  что стоит jet 4 sp7 но файлов не было. и не ставилось... т.к. полная установка это 3sp а дальше только апдейты... догадайся как решили...
ну и третий (любимый случай :)) один начитался журнала хакер и давай с сервера все не нужное удалять по его рекомендациям... пришлось посылать цто - шника по запросу "ваша прога не ставится"... ага, а там ничего как оказалось не ставится... не запускается просто ничего сложнее блокнота.

> Придётся тащить дистрибутив для установки.
а dll конечно тащить не надо... причем всегда, в отличие от "на тот невероятный случай если все таки нету".
и к тому же лучше не тащить, а включить в свой установщик (или ты думаешь он только файлы копирует?), который и поставит все без вопросов, если конечно его там вдруг не окажется.

> MS Jet может  быть не той версии. Что делать в этом случае?
а ничего, взаимодействие с интерфейсами не менялось с 5sp (2000г 2000версия включен по умолчанию в 2000ю винду), да и тогда изменения взаимодействия с внешними(для com-а) программами были минимальны (кто помнит ошибка с Bof/Eof при пустом рекордсете была от этого, но только в борланде, если бы константы не хранили в исходниках, а получали от обьекта как VB и этого бы не заметили).

> MS Jet - не полноценная СУБД.
сильный аргумент... просто железобетонный... хотя для нормальных, непредвзятых людей (ктото тут кого то в этом обвинял...) это не аксиома, не аргумент, а мнение которое еще надо доказать.


 
turbouser ©   (2009-03-14 04:39) [105]


> Тын-Дын ©   (14.03.09 03:17) [102]

Врятли... Все уже по полочкам разложено.. Ну не может Медвежонок Пятачок © понять... и свою т.з. объяснить толково не может... его проблемы... :(


 
turbouser ©   (2009-03-14 04:48) [106]


> sniknik ©   (14.03.09 04:38) [104]

ну как же без Access и MSSQL? Да прям в никуда...


 
ZeroDivide ©   (2009-03-14 05:19) [107]


> Ладно, может с утра ещё кто подключится к дискуссии и внесёт
> свежую струю...


Охотно :)


> Я выше описал реальную ситуацию. ООО, две тетки две персоналки
> и студент раз в месяц. Ну еще генеральный, который в тетрис
> умеет играть.
...
> Приходишь, ставишь. Все работает.
> Через неделю там ставят ПО третьей стороны, тоже использующее и
> ставящее сервер FB.


Ситуация понятна. Но виноват ли в ней FireBird?
С точки зрения теток, между прочим, виноват тоже не FireBird, а Вы! :)
И тетки, если серьезно, недалеки от истины...

Разумеется, признаемся честно, виновата третья сторона (а не FireBird, опять же), которая не поняла, что FB уже установлен и что-то на нем крутится. И именно третья сторона должна решать проблему... а иначе морду им набить.

Несовместимость различных версий СУБД это вовсе не аргумент в споре о неприменимости их в решении каких-то задач. Иначе, так же можно рассуждать например и о бескомпромисных всефункциональных монстрах:
У нас стоял 10-ый Oracle, пришла третья сторона все снесла нафиг и поставила 7-ий Oracle на этот сервер.... и теперь не работает... ну бред же это... :)

Я понимаю, что когда речь идет о максимальной автономности работы пользователя с программой (т.е. без ваших выездов, для ее починки), такие вопросы являются важными.

Но в случае с FB, даже не с embeded-версией (там совсем таких проблем нет), все эти вопросы можно решить программно. Можно вынести часть в инсталлятор: определение установлен ли уже FB, какой он версии. Если установлен и нас устраивает, находим куда он установлен и прописываемся ему в aliases.conf. Все чисто, красиво и не трогает других приложений, работающих с этим же сервером. Если стоит IB или FB с более ранним ODS или еще по каким-то причинам нас не устраивающая, инсталлятор предложит ограничиться embeded, порекомендует установить сервер на другой компьютер в сети или отправит к руководству по разнесению серверов по разным портам. Да и руководство к ПО должно быть написано так, что если и возникает потребность в обслуживании/настройке/диагностике, то все моменты должны быть там описаны в понятной для целевой аудитории форме.

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

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

> Ага. щас мы там административно порешаем все вопросы. и пофик, что я один, а этих ООО сотни и тысячи.

Тысячи ООО и я - один... и разработчик и сопровождение :)

Даже если и тысячи... реальная практика показывает, что нет особых проблем с сопровождением FB. То, что вы лично наткнулись на пару злобных теток или еще был примерно похожий инцидент у вас, вовсе не говорит о том, что это повсеместно так происходит.


 
turbouser ©   (2009-03-14 05:28) [108]


> ZeroDivide ©   (14.03.09 05:19) [107]

Блин! Я же то же самое втирать этим апологетам хаоса пытался...
Да еще и .... блин.. От Еть!


 
turbouser ©   (2009-03-14 05:33) [109]


> ZeroDivide ©

Respect!


 
atruhin ©   (2009-03-14 08:34) [110]

> [99] Медвежонок Пятачок ©   (14.03.09 03:11)
> Да, да, я знаю. В твоем приложении это должно делаться простым
> копированием файла.
> Но юзер взял и сделал бэкап\рестор.

А если юзер взял и БД акцесса hex редактором поправил? Действие то аналогичное.
Какого хрена разработчик должен отвечать за то, что юзер сделал с БД, с помощью
посторонних средств, не имеющих отношения к программе, и не входящих в пакет?

> Нужен новый триггер.
> Ты пока не знаешь, если ли он или его нет.
> Или может он есть, но инвалидный и требует удаления\создания
> или пересоздания.
> твои действия?

У БД есть версия. Есть скрипты обновления переводящие БД к следующей версии,
откуда взялся неучтенный тригер?
Да даже если у тебя в БД бардак, и ты не знаешь, что там есть, объясни чем отличается
определение наличия тригера в любой версии IB, FB, YA
? Только без демагогии, ответь на
конкретный вопрос.
PS/ А то действительно написал массу постов, и ни одного конкретного примера, ни одному
из оппонентов.


 
atruhin ©   (2009-03-14 08:44) [111]

> [45] Медвежонок Пятачок ©   (14.03.09 00:15)
> Когда у авторов фб от версии к версии регулярно руки чешуться
> поменять что-то в системных таблицах.

Приведи хоть одно изменение системных таблиц за все время существования FB?
Затем приведи изменение в сист. таблицах, нарушающее обратную совместимость!
Или это тоже высказывание из разряда "сначала напишу, а затем подумаю".


 
Админ   (2009-03-14 08:55) [112]

Медвежонок Пятачок ©   (12.03.09 12:06) [6]
Акцесс без вариантов


+1


 
Админ   (2009-03-14 09:21) [113]

Читаем ТЗ:

дед Маздай ©   (12.03.09 11:29)  
Какую бы взять СУБД для следующей задачи. Пяток таблиц, сотня записей в каждой каждый месяц (рост весь период эксплуатации), лог (отсюда пожелание, поддержка тригерров), поддержка вьюшек. Ну вот, вроде бы и все. А, вот еще, желательно, даже обязательно - файловая. Без установки в систему. Т.е. набор длл в каталоге программы, который (каталог) можно взять, скопировать и запустить на другой машине.


Берем Аццесс и флаг в руки.

Тригерры на 5 таблиц - смех и только, вьюшки на 5 таблиц это вообще пипец. Сотня записей в месяц - просто убили мозг! (сравните количество записей только на это обсуждение, а ведь мастаки на текстовых файла крутятся... ппц).

И все ваши обсуждения в корзину.


 
Медвежонок Пятачок ©   (2009-03-15 04:04) [114]

Ситуация понятна. Но виноват ли в ней FireBird?

А кто-то говорил, что виноват ФБ?
Я в самом начале ветки наприсал черным по белому:
"к самому фб как таковому претензий нет"

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


 
Медвежонок Пятачок ©   (2009-03-15 04:06) [115]

Приведи хоть одно изменение системных таблиц за все время существования FB?

Давай лучше ты приведи здесь sql код для выяснения существует ли триггер в базе.

Для иб, для фб 1.x , для фб2.x


 
Медвежонок Пятачок ©   (2009-03-15 04:12) [116]

У БД есть версия. Есть скрипты обновления переводящие БД к следующей версии,
откуда взялся неучтенный тригер?
Да даже если у тебя в БД бардак, и ты не знаешь, что там есть, объясни чем отличается
определение наличия тригера в любой версии IB, FB, YA
? Только без демагогии, ответь на
конкретный вопрос.
PS/ А то действительно написал массу постов, и ни одного конкретного примера, ни одному
из оппонентов.


Какой бардак, юноша?
ПО развивается и модифицируется.
В версии x появилась новая таблица.
В версии х+1 появился новый триггер
В версии Х+2 появился еще что-то.

Пользователей много.
Не все качают все обновления подряд.
Может быть случай, когда юзер обновляется с версии х сразу на версию х+10.

У тебя как я понял, за это ему будет пожизненный эцих с гвоздями.

У меня - ничего не будет. Он просто обновится с любой версии на любую более старшую и будет работать как ни в чем ни бывало.

Где здесь увиден бардак?


 
sniknik ©   (2009-03-15 10:23) [117]

> А если юзер взял и БД акцесса hex редактором поправил? Действие то аналогичное.
очень аналогичное... одно дело выполнить рекомендуемую везде процедуру восстановления/бэкапа базы (насколько помню везде советы, при малейших проблемах - сделать бэкап, ресторе), другое прямое вредительство...
если для тебя это одно и тоже, то тебе нужно найти настоящего программиста, и пройти у него курс "лечения", от алогичности, очно.

> с помощью посторонних средств, не имеющих отношения к программе, и не входящих в пакет?
а почему нет? если он пользуется стандартными утилитами, от основного "пакета" - собственно sql сервера.
вот для аксеса можно, хоть аксесом сжать (тоже рекомендованная процедура, правда рекомендуется делать ее пореже), хоть из odbc администратора, чужой программы, своей программы в общем в чем найдет тем пусть и делает (и даже hex редактором если сможет там правильно сжать...).


 
atruhin ©   (2009-03-15 11:51) [118]

> [117] sniknik ©   (15.03.09 10:23)

Ну и пусть делает бэкап/рестор используя клиентскую dll поставляемую с ПО, и все будет нормально работать.
А если он использует внешний сервер более старшей версии, то кто виноват, что БД не будет после этого
работать на более младшей?
Не знаю как у других серверов, но в FB b/r это способ перевода БД на более новую версию, и не вижу в этом
больших недостатков. Ресториш на более новой версии, ну так с ней и работай.
У того же Microsoft MS VS Runtime dll не совместимы даже между разными сервис паками одной версии, не говоря
о разных версиях, и никто не кричит, почему ПО не работает если поменять dll/


 
Anatoly Podgoretsky ©   (2009-03-15 13:05) [119]

> atruhin  (15.03.2009 11:51:58)  [118]

У других это не является основной задачей, просто одна из возможностей.
Но это должен делать администратор или же пользователь, если это встроено в приложение, а ни какими то посторонними средствами, включая родные.


 
sniknik ©   (2009-03-15 13:40) [120]

> Ну и пусть делает бэкап/рестор используя клиентскую dll поставляемую с ПО, и все будет нормально работать.
пусть делает, не возражаю... но тогда утилиту для этого нужно тоже таскать с собой в пакете вместе с dll, а это уже не "просто dll-ку вместе с программой кинул и работает", это уже должен быть нормальный сетап со всем необходимым.

> и никто не кричит, почему ПО не работает если поменять dll/
ты опять не видишь разницы? плевать когда что то после обновления внутри себя не совместимо с частями от другой версии, это нормально, главное чтобы клиентское ПО, то что с этим работает не видело разницы в интерфейсах, взаимодействии с этими версиями.

вообще проблема FB, имхо, в том, что позволяют в системные таблицы лезть, и даже поощряют, т.к. судя по всему без этого часто не обойтись...
ввели бы "интерфейсную" часть, типа INFORMATION_SCHEMA в MSSQL которая не менялась бы от версии к версии независимо от того откуда берут исходную инфу, и доке бы прописали "системные таблицы не про вас, пользуйтесь этим" и все было бы нормально.
кстати, не знаю, может это у них уже есть, но тогда значит разработчики сами виноваты, что не соблюдают рекомендаций по использованию FB в своих приложениях.



Страницы: 1 2 3 4 вся ветка

Текущий архив: 2009.05.24;
Скачать: CL | DM;

Наверх




Память: 0.74 MB
Время: 0.019 c
15-1237498202
Юрий
2009-03-20 00:30
2009.05.24
С днем рождения ! 20 марта 2009 пятница


15-1237378003
Styx_
2009-03-18 15:06
2009.05.24
Шестнадцатиричные числительные


15-1237840569
alexander-rsh
2009-03-23 23:36
2009.05.24
Медиаплеер


2-1239083759
Нов_и_чок
2009-04-07 09:55
2009.05.24
Экспорт DBF в MDB


11-1200709306
Jon
2008-01-19 05:21
2009.05.24
Binary search