![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 178 Pomógł: 51 Dołączył: 7.01.2009 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Tworząc dalej moje systemy znów się zatrzymałem. Z powodu wiedzy... (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) Robię teraz inny system, ale moje pytania dotyczy samego języka SQL. Chciałbym dodać kilka wartości. Mam kod php który wyciaga liczbę z sesji i wyswietla tyle grup pól ile wynosiła liczba. Pola wysietlam za pomocą pętli. Problem w tym, jak dodać teraz to wszystko do bazy danych. Wiem jak dodać jedną wartośc, ale kilka?
Teraz dwa pytania w jednym, albo trzy. Jedno wynika z drugiego. Załóżmy sytuacje. Dodajemy dużo wierszy, a potem usuwamy część z nich. Ze środka, końca początku.
Pozdrawiam! Ten post edytował thomson89 20.03.2009, 21:37:21 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 658 Pomógł: 95 Dołączył: 20.12.2005 Skąd: N54,35° E18,63° (Gdańsk) Ostrzeżenie: (0%) ![]() ![]() |
Chciałbym dodać kilka wartości. Mam kod php który wyciaga liczbę z sesji i wyswietla tyle grup pól ile wynosiła liczba. Pola wysietlam za pomocą pętli. Problem w tym, jak dodać teraz to wszystko do bazy danych. Wiem jak dodać jedną wartośc, ale kilka?
- Nie rozumiem pytania, jeśli chciałbyś coś więcej wstawić w 1 wiersz to możesz skorzystać z serialize" title="Zobacz w manualu PHP" target="_manual - i całą tablice zapisać, przy odczycie unserialize" title="Zobacz w manualu PHP" target="_manual # Mamy ustawione dla klucza primary auto increment. Czy można jakoś wymusić, abym ja mógł sobie wpisać tylko jeden raz id - oczywiscie unikalne? - Oczywiście - tylko najlepiej żeby było "większe" niż pozostałe, później możesz mieć problemy. Po wykonaniu takiej akcji wykonaj zapytanie: ALTER TABLE tabela AUTO_INCREMENT = TWOJEUNIKALNEID+1 # W sytuacji początkowej, zostały nam klucze 2,3,5,7,23,39,40,45,46,47. Czy mozna je jakoś poustawiać, aby sie scaliły? Czyli zmniejszyć klucz pierwszy o liczbę o jeden większą od poprzedniego? Aby uzyskać 1,2,3,4,5,6,7,8,9,10. Ja bym pobrał wszystkie ID - i je "przeindeksował", i dla każdego zapytanie typu "UPDATE tabela SET id = $indeks WHERE id = $stare_id" |
|
|
![]()
Post
#3
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
Cytat Ja bym pobrał wszystkie ID - i je "przeindeksował", i dla każdego zapytanie typu "UPDATE tabela SET id = $indeks WHERE id = $stare_id" a co gdy ID w tabeli będzie połączony relacją z inną tabela? ten zabieg jest kompletnie bez sensu. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 221 Pomógł: 14 Dołączył: 11.03.2009 Skąd: Lubaczów Ostrzeżenie: (0%) ![]() ![]() |
INSERT INTO cytaty VALUES(autor, tresc) <- KOD DLA WIERSZA, a kilka?
to chyba o to Ci chodzi :
o to Ci chodzilo (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) mozesz takze :
ale w tym drugim musi istniec taki rekord;) Pozdrawiam |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 178 Pomógł: 51 Dołączył: 7.01.2009 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
o to Ci chodzilo (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Tak o to. A teraz jeszcze to pytanko: Cytat (...) jak można obniżyć ostatnią wartość primary id. Dane mamy klucze 1,2,3,4,5. Jeżeli usuniemy klucze 3,4,5, to jezeli dodamy kolejne wartości klucze będą wynosić 1,2,6,7,8. Jak można skasować ten próg? Chyba sobie sam odpowiedziałem: I do tego pytanko: jak znaleść aktualnie największe id? Mam jakieś rozwiązanie... Ten post edytował thomson89 21.03.2009, 13:41:51 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 8.02.2013 Ostrzeżenie: (0%) ![]() ![]() |
już sprawdzam:)
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 283 Pomógł: 31 Dołączył: 10.01.2006 Skąd: Działoszyn Ostrzeżenie: (0%) ![]() ![]() |
Największe ID:
Możesz też wyciągać aktualną wartość pola Auto_increment z bazy 'Information_schema' - w niej masz dane o wszystkich tabelach wszystkich baz danych na Twoim serwerze. O ile jej nie usunąłeś... (IMG:style_emoticons/default/wink.gif) Ten post edytował Michasko 9.02.2013, 17:37:14 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 02:33 |