Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zapytanie
Forum PHP.pl > Forum > Bazy danych
Lars
  1. UPDATE `cms_multimedia`
  2. SET title='Test',
  3. content='Test',
  4. LIMIT='1'
  5. WHERE id='1'


Cytat
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 'limit='0' WHERE id='1'' at line 1


Dlaczego to nie działa? jakoś tam SQL syntaxa nie widzę....
>> Pozdrawiam.

PS. Dodam ze po usunięciu limit='0' updatuje się poprawnie

>> Ehh...dopiero teraz zorientowalem sie ze limit nie mozna użyć
jako nazwy pola. Pozdrawiam tongue.gif
FiDO
LIMIT jest slowem kluczowym w MySQL'u, wiec jesli chcesz uzywac kolumn o takiej nazwie to musisz je zamknac w ``.
SongoQ
Ze slowami kluczowymi w SQLu zawsze byl problem. Dobrym nawykiem i pozniejszym ulatwieniem jest stosowanie nazwy lub skrotu nazwy tabeli w polu.

Tabela o nazwie "Uzytkownik"
Pola: Uzy_Id, Uzy_Imie, Uzy_Nazwisko

Dla relacji np Tabela Uzytkownik, Grupa

Grupa:
Gru_Id, Gru_Nazwa

Uzytkownik:
Uzy_Id, Uzy_Gru_Id, Uzy_Nazwa

Trzymam sie czegos takiego jeszcze nigdy nie mialem pomylki z slowem kluczowym lub polem z innej tabeli
sobstel
@songoq, nie jestem przekonany czy to dobry nawyk, najlepiej brac w apostrofy ` (te kolo 1 na kalwiaturze)

np.
  1. SELECT `limit`
  2. FROM limity


przedrostek, tak jak ty go uzywasz jest dla mnie niepotrzebnym kompikowaniem rzeczy, bowiem w zlaczeniach wystarczy pisac tak:

  1. SELECT tab1.pole, tab2.cos
  2. FROM tab1 INNER JOIN tab2 USING(tabid)


w mojej opini w zupelnosci to wystarczy i nie widze koniecznosci stosowania przedrostkow w nazwach kolumn
SongoQ
Cytat
@songoq, nie jestem przekonany czy to dobry nawyk, najlepiej brac w apostrofy ` (te kolo 1 na kalwiaturze)


Apostrofy to tylko glupi wymysl MySQL, w innych bazkach jest to ". Moze troche utrudnienie jest wstawianie przedrostkow tabel w polach ale gdy widze nazwe pola wiem za jakiej tabeli to jest i nie musze sie domyslac co zle zrobilem. Oczywiscie jak tak zastosuje to wtedy USING jest niepotrzebny.
To jest taka dyskusja jak "po co wstawiac w php przedrostki typow w zmiennych jak w php nie ma definicji jakiego typu jest zmienna", filozofia jest taka sama smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.