Переход с MS SQL на PostgreSQL | |
---|---|
Аспид Автор Сообщений: 3475 Откуда: Москва Дата регистрации: 01.04.2005 |
Кто нибудь делал такое?
Появилась просьба от клиента. Хочет нашу систему, но просит на Postgre. Для дальнейшего разговора, хочется понять велика ли разница. Очевидно, что структуру данных, перенести не сложно. А вот функции и ХП, наверное в основном придется переписывать. ------------------ |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Да, насколько я понимаю даже с более близкого идеологически oracle весьма прилично переделок будет (даже если найти инструмент автоматизированного перевода синтаксиса встроенных языков). Это даже не приближаясь к вопросам оптимизации, т.е. получения эффективно работающего решения - хотя бы получить просто работающее
------------------ WBR, Igor |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
Аспид Автор Сообщений: 3475 Откуда: Москва Дата регистрации: 01.04.2005 |
Да. Пощупал немного. Ооочень удивился.
Не хочу. Отказал, предложил експресс. Там работы по переводу, больше чем денег. ------------------ |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Это да, для "широко" использующих возможности СУБД программ смена СУБД - большая попаболь. Даже порой просто переход на новую версию стоит немалой крови. ------------------ WBR, Igor |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
Гулин Федор Сообщений: 4633 Откуда: Минск Дата регистрации: 24.10.2002 |
+1 я за постргрес не скажу - народ хошрош отзывался но сам щас чуть на mysql пишу блин коге где плююсь - правда на 5.6 не после. версии но все равно переписать чего-то с скл-сервера я б не взялся |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
Аспид Автор Сообщений: 3475 Откуда: Москва Дата регистрации: 01.04.2005 |
С MySql работал.
С FireBird Немного. Да что только не щупал) Как-то постгрес... не доводилось. Поставил, начал искать средства управления. Читать. Ясно, надо глубоко и всерьез влезать. не знаю почему, но конструкция
Вынудила написать
Решил, не тратить время. Наскоком не взять, а глубоко - смысла нет. Кстати с Мускулом все гораздо проще. Если убрать с сервера логику, то практически все запросы работают. Ну и в дополнение. А убер в июле 2016 свалил постгреса на мускул. Вот так вот))) Пишут, постгрес после этого сильно подтянулся))) ------------------ |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
ou Сообщений: 118 Дата регистрации: 07.08.2007 |
Придется. Работаю и с тем, и с другим из фокса. И то, и другое не вызывает раздражения. Переводить систему с одного на другое не приходилось, так что конкретных советов, увы, не дам. В Постгре очень нравятся функции (там нет деления на функции и ХП - так что это то и другое в одном флаконе). Очень гибкие и очень богатый набор включен в сам Постгре - MS SQL, на мой взгляд, в этом сильно проигрывает. Но однозначно переход - огромная работа. |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Это очень странно. Не путаешь ли ты чего? постгрес регистрочувствителен в части имён объектов (таблиц, полей) и если имя задано в смешанном регистре, или в ВЕРХНЕМ, то вынудит такой идентификатор квотировать - НО custom это имя полностью в нижнем регистре, и не является зарезервированным словом, потому в квотировании не нуждается... Я полагаю что ты всё же путаешь что-то и на самом деле у тебя таблица называлась "Custom" или "CUSTOM" - такие идентификаторы действительно нужно заключать в кавычки (но лучше попросту не использовать). Оракл в этом отношении очень похож, только там неквотированные идентификаторы приводятся к верхнему регистру. Чтобы не создалось неправильного впечатления - писать идентификатор в тексте запроса можно как угодно - custom, Custom, CUSTOM или даже CuStOm - только надо понимать что без кавычек все эти имена на самом деле являются именем custom (а в оракле CUSTOM). И только закавычив мы "сохраняем регистр" - но тогда уж, извини, придётся всюду и всегда это имя кавычить и писать его (регистры отдельных букв) абсолютно точно как и в момент создания Честно говоря не работал, но чем то он мне не нравится... Даже если не считать отсутствие серверного процедурного языка (нынче мода пошла не пользоваться этими средствами - весь код выносить в MiddleTier, а БД чисто как хранилище данных)... ------------------ WBR, Igor |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
ВладимирС Сообщений: 1693 Дата регистрации: 03.11.2005 |
Да и на PostgreSQL нет (не увидел) процедур, одни функции... Хотя может это и по идеологии нормально. Но пока непривычно.
Хотя импорт (из внешних файлов в таблицу) делает очень шустро. |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Какой ужас! А если бы ты в Си заглянул или тот же C# то, наверное, вообще потерял веру в человечество RETURNS void в постресе эффективно превращает "функцию" в "процедуру". Кстати, как ты в фоксе то жил раньше, там ведь PROCEDURE может делать RETURN что_то и вызываться как переменная=процедура(1,2,3) , а FUNCTION напротив - НЕ возвращать ничего, и при этом вызываться через DO функция WITH 1,2,3 А на уровне объектного кода между ними (декларацией процедуры и декларацией функции) вообще нет никакой разницы. ------------------ WBR, Igor |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
Аспид Автор Сообщений: 3475 Откуда: Москва Дата регистрации: 01.04.2005 |
Конечно, функции, ХП это мура.
Остановило другое. 1. На сразу бросилось в глаза, какие то мало внятные (для меня) инструменты. Как то для МС что визуал студия, что мэнеджемент, внятны и ясны. Даже сторонний dbForge, все равно сразу ясен. Тут ясно, дело привычки. И не понимание особенностей. И 2. Чуть углубившись, ясно, что иногда обращаешься к схеме. И тут она своя. В общем предстоит несколько углубляться в изучение... Очевидно, что тот кто работает с данной СУБД, все это знает, и привык, и нет проблем. Проблемы у них возникнут, про инверсии задачи))) В общем ради разовой хотелки, и то, не твердого требования, а просто "не плохо бы" - не стоит) Именно так) Не ожидал что это зарезервированное слово))) И обращался как Custom, но пока не взял в кавычки, не работало. Неудачный случайный эксперимент. Надо было задать какой нибудь Adres or Good. ------------------ |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Это НЕ зарезервированное слово. Просто когда ты создавал таблицу (вероятно при помощи какого-то GUI инструмента) то реально была послана команда
Если бы ты писал скрипт создания руками, или твой визуальный инструмент не кавычил имя, то независимо от того как ты написал:
Оракл работает сходным образом, и лично я всегда выступал категорически против регистрочувствительных имён (т.е. закавыченных) - ну заодно и против русскоязычных идентификаторов (там всё ещё хуже будет у "русофила"). ------------------ WBR, Igor |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Именно так - лично у меня, привыкшего к одной определённой утилите работы с сервером, отторжение вызывает практически любая другая утилита - несмотря на то что сервер тот же самый Так что я не согласен с тем что тут дело в сервере - тут дело именно в подходе к UI в утилите. Если он "привычен", то переход (ну в плане чисто примитивной работы - посмотреть/создать/заполнить таблицу, выполнить запрос) на другой сервер будет гораздо проще и приятнее. ------------------ WBR, Igor |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
Аспид Автор Сообщений: 3475 Откуда: Москва Дата регистрации: 01.04.2005 |
Про custom наконец-то дошло)))
Про UI изначально было ясно. Тем более EMS использовал. Поскольку использовали его и для своих нужд, но он и раньше не нравился. Но стало ясно, что либо углубляться в изучение, и приводить все специфичное для МС, на пост (что может оказаться даже не верным)... В общем, пока сделаешь зрелый продукт, пара лет канет. Просто нет смысла. (полно клиентов сидят на експрессе, и не жалуются) Если б различия были на копейку. Ну нет автоинкремента, элементарно обходится, но... такой спотыкач на каждом шагу ------------------ Исправлено 1 раз(а). Последнее : Аспид, 23.02.18 17:52 |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
pasha_usue Сообщений: 3647 Откуда: Е-бург Дата регистрации: 06.10.2006 |
На самом деле, если бы у меня стояла задача нарисовать нечто одинаково хорошо себя чувствующее в Postgre и MsSQL с нуля, здесь вопросов бы не возникало. А вот перетащить одно на другое я бы решился только с Ms на Pg, но не обратно. В Pg проще переопределить типы данных, агрегаты и встроенные функции, так что б хоть немного трудозатраты минимизировать. |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Автоинкремент a-la MSSQL там есть, если что. При том в новой 10 версии его ещё и "улучшили", сделав ещё более мягким по отношению к пользователю (т.к. он по сути является "синтаксическим сахаром" над обычным sequence и default value для поля, у "старой" реализации были кой какие косяки - не в обычной работе, а в "управлении" этим хозяйством).
------------------ WBR, Igor |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
spinz Сообщений: 5263 Дата регистрации: 21.01.2016 |
Как думаете, возможно ли автоматизировать трансляцию исходника с одного ЯП на другой?
|
Re: Переход с MS SQL на PostgreSQL | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
www.tangiblesoftwaresolutions.com www.microsoft.com На сколько я в курсе - гадость редкостная (кроме перевода VB.NET<->С# т.к. там по сути один язык с разным синтаксисом ). Про автопереводчики с FPD на VFP я уж скромно промолчу... Качественно такого рода трансляцию даже человек не всегда может сделать, ИИ пока не дорос до "понимания смысла" кода, а значит не может эффективно изложить произвольный алгоритм "в других терминах". Хотя кое что, наверное, в теории может быть транслировано - через тот же UML как промежуточное звено. ------------------ WBR, Igor |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
spinz Сообщений: 5263 Дата регистрации: 21.01.2016 |
С другой стороны тот же HexRays (привет Ильфаку) достаточно качественно переводит машкоды в С. По аналогии - что мешает скомпилить исходник и "развернуть" его в другой ЯП?
За качество говорить не будем, важен сам принцип. |
Re: Переход с MS SQL на PostgreSQL | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Вот это и мешает - практическая бесполезность "генератора туфты". Для родственных (идеологически) языков ещё как-то работает, для далёких - глупость и вредность одна выходит. Ведь что нужно для качественного портирования? Сохранение принципа, идеи продукта, так сказать, а вовсе не "деталей реализации". Ну там был массив, тут будет список, или "курсор". Там был цикл, тут будет запрос... До такого уровня "проникновения в абстракцию" ни один транслятор пока не поднялся. А "буквальный" перевод не просто плох - он отвратителен (тут даже личный опыт имеется - видел я как на дотнет "переводили" VB6 проект - это "обнять и плакать"). ------------------ WBR, Igor |
© 2000-2024 Fox Club  |