/ / 1064 Błąd MySQL w dekrementacji za pomocą - mysql, mysql-error-1064

1064 Błąd MySQL w dekrementacji za pomocą - mysql, mysql-error-1064

Używam Update videos Set views = views + 1 Where video_id="$id", ale MySQL daje mi błąd 1064:

Wystąpił błąd w składni SQL; sprawdź instrukcję odpowiada twojej wersji serwera MySQL dla właściwej składni do użycia w pobliżu "8" w linii 1

Co może spowodować?

Odpowiedzi:

2 dla odpowiedzi № 1

Najprawdopodobniej identyfikator $ nie jest tym, czego się spodziewasz. Wyobrażam sobie, że zapytanie, które przychodzi, wygląda podobnie

update videos set view = views + 1 where video="" 8"";

Uwaga: Są to dwie pojedyncze cytaty po obu stronach 8.

Aby to potwierdzić, masz kilka opcji.

  • Włącz logowanie ogólne, jako superużytkownik (root) z wiersza poleceń mysql uruchom

    set general_log_file = "/ tmp / mysql.log"; set general_log = "on";

Teraz każde pojedyncze zapytanie wysyłane do mysql pojawi się w /tmp/mysql.log (zauważ, że to szybko może bardzo wzrosnąć, więc nie zostawiaj go po zakończeniu debugowania).

  • Dzienniki aplikacji

Czy odbywa się jakikolwiek rodzaj ramek logowania? Przed rzeczywistym wezwaniem do wykonania zapytania, zarejestruj wartość ($ id). Aby uzyskać słabe rejestrowanie mans, możesz zrobić coś takiego

file_put_contents ("/ tmp / debug.txt", data ("Y-m-d H: i: s"). "id to [$ id] n", FILE_APPEND);