Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zmiana kolejności pól w bazie
rkolida
post
Post #1





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 28.12.2004

Ostrzeżenie: (0%)
-----


Witam,
czy istnieje mozliwosc zmiany kolejnosci pol w bazie MySQL ?
Mam prosty guestbook - pierwsze pole to ID wpisu, potem imie, email, ..., a na koncu data. Chcialbym zeby data znajdowala sie zaraz po ID, czyli zeby byla drugim polem w bazie, a nie ostatnim. Czy da sie to ustawic z poziomu phpMyAdmina ? Czy to w ogole jest mozliwe ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
crash
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 196
Pomógł: 2
Dołączył: 17.01.2004
Skąd: Sosnowiec

Ostrzeżenie: (0%)
-----


Wystaczy troche pomyśleć... phpMyAdmin pokazuje ładnie jak dodawać pole na określonej pozycji... Wystarczy zajżeć do manuala MySQL i zobaczyć składnie ALTER TABLE i już gotowe:
  1. ALTER TABLE `table` MODIFY `pole` TYP_POLA AFTER `po_jakim_polu`;


--------------------
Go to the top of the page
+Quote Post
rkolida
post
Post #3





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 28.12.2004

Ostrzeżenie: (0%)
-----


Cytat(crashu @ 2005-02-20 13:14:12)
Wystaczy troche pomyśleć...

Tez sadzilem, ze wystarczy pomyslec, ale wydaje mi sie ze cos jeszcze trzeba wiedziec, bo nie idzie:

zapytanie SQL:

  1. ALTER TABLE `guestbook` MODIFY `date` TIMESTAMP( 14 ) NULL AFTER `id`
  2. MySQL zwrócił komunikat:
  3.  
  4. #1064 - Something is wrong in your syntax obok 'AFTER `id` ' w linii 1
Go to the top of the page
+Quote Post
crash
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 2 196
Pomógł: 2
Dołączył: 17.01.2004
Skąd: Sosnowiec

Ostrzeżenie: (0%)
-----


No znów wystarczy pomyśleć biggrin.gif W Twoim zapytaniu widzę pole date a sam pisałeś, że masz data. Aż się zdziwiłem, że moja rada mogłaby nie działać. Stworzyłem sobie identyczną tabelę jak Twoja i wszystko działa poprawnie.


--------------------
Go to the top of the page
+Quote Post
rkolida
post
Post #5





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 28.12.2004

Ostrzeżenie: (0%)
-----


Cytat(crashu @ 2005-02-20 13:42:10)
W Twoim zapytaniu widzę pole date a sam pisałeś, że masz data.

Nie, zle wczesniej napisalem, mam date. Co jeszcze moze byc powodem wystapienia takiego bledu, bo wszystko wydaje sie tu byc poprawnie napisane..
Go to the top of the page
+Quote Post
crash
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 196
Pomógł: 2
Dołączył: 17.01.2004
Skąd: Sosnowiec

Ostrzeżenie: (0%)
-----


Wygląda poprawnie, ale mam dwie możliwości wystąpienia błędu:
1. Zła nazwa pola: może ID a nie id?
2. Nie pozwala na używania słowa kluczowego SQL jako nazwę pola (tzn. date)


--------------------
Go to the top of the page
+Quote Post
Yarecki
post
Post #7





Grupa: Zarejestrowani
Postów: 166
Pomógł: 0
Dołączył: 1.04.2004
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


Cytat(crashu @ 2005-02-20 17:23:33)
Wygląda poprawnie, ale mam dwie możliwości wystąpienia błędu:
1. Zła nazwa pola: może ID a nie id?
2. Nie pozwala na używania słowa kluczowego SQL jako nazwę pola (tzn. date)

1. MySQL jest case insensitive.
2. Możliwe.

3. Brak ; na końcu zapytania ? Długo nie używałem phpMyAdmin, ale chyba trzeba było dawać ; na końcu.


--------------------
Nigdy nie kłóć się z głupim, ludzie mogą nie dostrzec różnicy.
Go to the top of the page
+Quote Post
crash
post
Post #8





Grupa: Przyjaciele php.pl
Postów: 2 196
Pomógł: 2
Dołączył: 17.01.2004
Skąd: Sosnowiec

Ostrzeżenie: (0%)
-----


Cytat(Yarecki)
3. Brak ; na końcu zapytania ? Długo nie używałem phpMyAdmin, ale chyba trzeba było dawać ; na końcu.
Nie smile.gif


--------------------
Go to the top of the page
+Quote Post
Vertical
post
Post #9





Grupa: Zarejestrowani
Postów: 848
Pomógł: 0
Dołączył: 7.07.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


";" dodaje się tylko wtedy kiedy pracuje się pod konsolą, z poziomu php automatycznie jest dodawany ";" na końcu
Go to the top of the page
+Quote Post
rkolida
post
Post #10





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 28.12.2004

Ostrzeżenie: (0%)
-----


Cytat(Vertical @ 2005-02-20 19:57:13)
";" dodaje się tylko wtedy kiedy pracuje się pod konsolą, z poziomu php automatycznie jest dodawany ";" na końcu

Tutaj koleżka w komentarzu na dole pisze o szybszym spsobie niz ta gmatwanina, ktora opisana jest wyzej. Niestety musialem postapic tak jak to opisane w tym rozdziale, bo to co zapodane w komentarzu po prostu u mnie nie dziala, a to jest wlasnie to o czym piszesz Crashu.
Czy to mozliwe ze to wersja MySQL ma tutaj znaczenie ?
Jesli chodzi o nazwe pola, to dodalem pole 'aaa' i tez chcialem nim pomanewrowac, ale niestety, przesuwac sie nie da...
Jakies sugestie ?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 05:45