Покинул форум
Сообщений всего: 1859
Дата рег-ции: Июль 2011 Откуда: Крым
Помог: 21 раз(а)
Название темы придумать не смог, в общем дело такое. У меня для ЧПУ будет транслитерироватся название поста. Как лучше сделать:
0) Записывать сразу же в базу транслитерированое название (прогоняя через функцию). И при выборке выбирать это поле тоже.
1) Выбирать название поста, а потом уже прогонять через функцию?
Что лучше, сразу записывать транслитерированое название, или при выборке преобразовывать?
OrmaJever
Отправлено: 17 Мая, 2012 - 23:22:42
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
etoYA а раззница? Если захотите хранить оригинал и преобразовать при выводе бещ проблем, а если захотите хранить русский, то при выводе всегда можно перевести обратно в транслит по таблице, разницы вобще никакой, темболее как написано в заголовке "скорость работы". Это вобще вопрос в удобности и проэктировании.
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
etoYA
Отправлено: 17 Мая, 2012 - 23:30:14
Участник
Покинул форум
Сообщений всего: 1859
Дата рег-ции: Июль 2011 Откуда: Крым
Помог: 21 раз(а)
OrmaJever, спасибо. Если только в удобстве, то вариант 1) имхо удобней)
Мелкий
Отправлено: 18 Мая, 2012 - 09:46:50
Активный участник
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
А теперь сравниваем 2 подхода:
0) в базе - русскоязычные записи:
нам нужно выбрать всё, к каждому применить транслитерацию, пока не найдём искомое
1) в базе - сразу транслит:
выбираем из базы строку (limit 1), совпадающую с нужной. Так же эффективен индекс, особенно - уникальный, что вполне не лишнее для этой задачи.
Вопросы?
Исключение:
Транслитерация полностью обратима, вы об этом помните и следите, в таком случае можно обратить транслит обратно в русскоязычный текст и выбрать по индексу из базы.
Как правило, удобнее хранить оба поля сразу, оригинальное для отображения и транслит для адресации.
----- PostgreSQL DBA
Muxa
Отправлено: 18 Мая, 2012 - 22:15:34
Частый гость
Покинул форум
Сообщений всего: 247
Дата рег-ции: Март 2012 Откуда: Россия, Тверь
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.