Jak zmienić baze ze strict

0

Witam,

Zaznacze, że jestem kompletnym laikiem. Mam baze danych MyPHP Admin, która jest baza sklepu internetowego. Po aktualizacji sklepu internetowego nic nie działało. Okazało się, baze danych przestawiono na tryb strict.
Chce ja ustawić na zwykły tryb, ale nie jestem superuser tylko zwykły użytkownik. Po wpisaniu komend wyłączenia trybu strict pokazuje się, że nie mam uprawnień.
Serwer mam wykupiony u operatora i ja mam dostęp tylko do panelu MyPHP Admin.
Czy jako użytkownik mogę jakoś wyłączyć tryb strict, chociaż tymczasowo na czas aktualizacji sklepu internetowego.

Uprzejmie proszę o pomoc w tym temacie.

1

Tryb strict możesz wyłączyć na czas trwania pojedynczej sesji (pojedynczego połączenia do bazy) wykonując zapytanie SET sql_mode = ''; / SET SESSION sql_mode = ''; - tzn. musiałbyś tak zmodyfikować sklep, aby uruchamiał to zapytanie automatycznie podczas rozpoczynania połączenia.

0

Wpisuje tą komende w zapytaniu SQL i wyskakuje "MySQL zwrócił pusty wynik (zero wierszy). (Wykonanie zapytania trwało 0.0001 sekund(y).)"

Jak to można zrobić

1

MySQL zwraca słuszny komunikat - to polecenie nic nie zwraca, tylko zmienia wartość zmiennej sesyjnej.

Spróbuj odpalić Twoje problematyczne zapytanie, potem odpal set sql_mode = ...; i ponownie spróbuj odpalić Twoje problematyczne zapytanie - za pierwszym razem powinno się wykrzaczyć, a za drugim przejść bez problemu.

0

No to robię tak:
1, Wpisuje SET sql_mode = ''; - wyskakuje wowczas MySQL zwrócił pusty wynik (zero wierszy). (Wykonanie zapytania trwało 0.0001 sekund(y).)
2. Wpisuje potem set sql_mode = ...; i wyskakuje komunikat:

Błąd
Zapytanie SQL:
set sql_mode = ...
MySQL zwrócił komunikat: Dokumentacja
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '..' at line 1

chce tylko wyłączyć ten strict mode

0

Czyli po wpisaniu SET sql_mode = ''; sesja zmieni się sama na tryb nie strict, tylko normalny?

0

Ad 1: Nie wpisuj tam wielokropka, tylko SET sql_mode = '';.

Ad 2: Tak, SET sql_mode=''; usuwa tryb strict (tylko dla tego jednego połączenia MySQL - nie wpływa to na żadne inne połączenie, dlatego musi być uruchamiane za każdym razem).

0

OK, dziękuję, cokolwiek zaczynam rozumieć już teraz.

Dowiedziałem się, że w przypadku sklepu internetowego korzystającego z tej bazy danych muszę wpisać "obejście" strict w pliku php, tzn, żeby za każdym razem się to zmieniało na tryb bez strict
W jakich pliach to zmienić? Mam dostęp do panel MyPHP oraz serwera na którym są pliki e-sklepu.

0

Nie napisałeś nawet z jakiego sklepu korzystasz - skąd mogę zatem wiedzieć, co masz zmodyfikować? ;-)

0

Oprogramowanie sklepu jest Shopgold - shopgold.pl

Wiem, że operator sklepu na moim FTP dodawał jakieś obejścia w plikach tego trybu strict.

0

Niestety nie korzystałem nigdy z tego, więc nie jestem w stanie pomóc - musiałbyś skontaktować się z autorem / operatorem.

1 użytkowników online, w tym zalogowanych: 0, gości: 1