powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Разные регистры в именах полей и таблиц.
4 сообщений из 4, страница 1 из 1
Разные регистры в именах полей и таблиц.
    #33698058
RussianSpy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поставили задачу следующего плана. Написать систему на РНР, которая будет работать как с PostgreSQL так и с MySQL. Решил использовать ADO.DB.
НО! Оказалось, что даже так непросто написать подобную кросс-систему. Дело в том, что таблицы и имена полей в БД называются примерно так: MenuItems, MenuItemsID, PageID и т.д. То есть используются как прописные так и заглавные буквы.

Получается, что тут уже несовместимость на уровне SQL-запросов.
То есть. Для Postgres запрос пишем так:

SELECT * FROM "MenuItems" WHERE "MenuItemsID">0

А в MySQL для тех же целей используются обратные кавычки `:

SELECT * FROM `MenuItems` WHERE MenuItemsID>0

Тут уж никакой совместимости не получается.

Что можете посоветовать?
...
Рейтинг: 0 / 0
Разные регистры в именах полей и таблиц.
    #33698185
-me-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гм, наиболее корректным видится следующее решение:
query string from PHP as std SQL -> парсер std SQL -> concrete SQL translator -> query to DB
где concrete SQL translator - это либо PostgreSQLTranslator либо MySQLTranslator

для данной конкретной задачи необязательно реализовывать полный SQL парсер, достаточно получить такой, который позволит определить подстроки, представляющие имена таблиц/полей.
Это не должно составить особой сложности (если только нет необходимости обеспечить совместимость по вызовам "встроенных" функций, используемых в запросах)
...
Рейтинг: 0 / 0
Разные регистры в именах полей и таблиц.
    #33698259
odyn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
$db->nameQuote
...
Рейтинг: 0 / 0
Разные регистры в именах полей и таблиц.
    #33698307
RussianSpy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
odyn$db->nameQuote
Спасибо огромное. Коротко и на 100% точно. =))
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Разные регистры в именах полей и таблиц.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]