Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Разница в синтаксисе MS SQL и Postgresql / 6 сообщений из 6, страница 1 из 1
10.06.2020, 22:03
    #39968061
.pessimist
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в синтаксисе MS SQL и Postgresql
Есть пример запроса MS SQL
DELETE FROM [MD_EXAMPLE] WHERE [SomeName] like '%Foo.Bar%'
На первый взгляд для Postgresql будет вполне корректно:
DELETE FROM MD_EXAMPLE WHERE SomeName like '%Foo.Bar%'
Оно работает и что-то удаляет.
Но похоже удаляет не всё что планировалось.
Что я сделал не правильно?
...
Рейтинг: 0 / 0
10.06.2020, 23:05
    #39968074
Guzya
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в синтаксисе MS SQL и Postgresql
Покажите, что не удаляет.
...
Рейтинг: 0 / 0
11.06.2020, 09:56
    #39968127
.pessimist
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в синтаксисе MS SQL и Postgresql
Не знаю что не удаляет.

Есть веб-приложение, оно много что хранит в базе данных. База может быть MS SQL или Postgresql. После обновления версии оно падает при запуске. Саппорт рекомендует перед тем как обновлять версию несколько запросов похожих на тот что я привел.
Вариантов два, или проблема в запросах которые предложил саппорт, или в реализации для Postgresql.

Перед тем как выяснять отношения с саппортом хочу проверить что я мог сделать неправильно.
...
Рейтинг: 0 / 0
11.06.2020, 22:13
    #39968407
gav21
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в синтаксисе MS SQL и Postgresql
.pessimist,
разница возможна из за чувствительности к регистру.
чтобы постгрес был не чувствителен используйте ilike
...
Рейтинг: 0 / 0
12.06.2020, 10:44
    #39968481
Ролг Хупин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в синтаксисе MS SQL и Postgresql
.pessimist
Есть пример запроса MS SQL
DELETE FROM [MD_EXAMPLE] WHERE [SomeName] like '%Foo.Bar%'
На первый взгляд для Postgresql будет вполне корректно:
DELETE FROM MD_EXAMPLE WHERE SomeName like '%Foo.Bar%'
Оно работает и что-то удаляет.
Но похоже удаляет не всё что планировалось.
Что я сделал не правильно?


1. Upper/Lower ilike (см. выше)
2. Сделайте
Код: sql
1.
select * FROM MD_EXAMPLE WHERE SomeName like '%Foo.Bar%'


Потом так
Код: sql
1.
select * FROM MD_EXAMPLE WHERE SomeName ilike '%Foo.Bar%'



и посмотрите, что "похоже" будет удалено
...
Рейтинг: 0 / 0
12.06.2020, 14:01
    #39968555
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разница в синтаксисе MS SQL и Postgresql
И давно разница в синтаксисе стала приводить к "падению при запуске"?..
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Разница в синтаксисе MS SQL и Postgresql / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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