Здравствуйте. Заметил недавно такую штуку в базе данных. сам опенкарт установлен с префиксом oc_ , и там со временем набралось куча таблиц без префикса. Как то может повлиять на работу магазина данная ситуация, или работает и фиг с ним?
Отсутствие префиксов у таблиц определенных модулей говорит о низком качестве кода этих модулей. Для чего нужны префиксы таблиц? - для того, чтобы в одной базе данных ужилось, например, два магазина на opencart - т.е. для избежания конфликта имен таблиц. Разумеется, лучше создавать отдельную базу для отдельного проекта, но если нет возможности ( тариф хостера не позволяет), но очень нужно - тогда выручают префиксы таблиц. Т.е. в вашем случае просто нужно об этом помнить, если вдруг захочется создать в одной базе два (или более) проекта.
боюсь представить зачем так делать. ну только если говно-хостинг даёт делать только одну бд, но тут просто надо валить с него.
да вроде нет работает., была проблема с модулем оплаты, у него была отдельная админка. при заходе в нее выдавало не найден файл локализации которого вообще нету на всем хостинге да и его там не должно быть. потом сменил прификс на ос_ , тоже самое. в итоге два вида таблиц в бд с префиксом и без. и каким то странным образом заработал модуль. и после этого озадачился влияет префикс или нет.
не на что он не влияет, что с ним, что без него будет работать если разработчик не делает префикс к своей таблице (например которая создаётся с каким-то модулем), то он его же не добавляет в запрос.
Правильнее сказать, "для чего нужны были префиксы". В древние тёмные времена тарифы хостеров даже с одной базой были довольно дорогими, а уж несколько баз - это вообще были заоблачные цены. Но сейчас держать в одной базе таблицы разных проектов - это хуже, чем модули, которые не используют префиксы в своих таблицах. В идеале, каждый проект должен иметь не только отдельную базу, но и отдельного пользователя (с отдельным паролем).