![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 0 Dołączył: 27.03.2003 Ostrzeżenie: (0%) ![]() ![]() |
mam pytanka odnosnie zamykania i otwierania bazy. czy trzeba zamykac polaczenie, a jesli tak to co sie moze stac jesli tego nie zrobie
![]() czy lepiej otworzyc baze na poczatku skryptu, wykonac zapytania i na koncu skryptu zamknac polaczenie i dlaczego? czy lepiej z jakichs powodow laczyc, zapytanie i zamkniecie i znow laczyc, zapytanie i znow zamknac? jestem poczatkujacym w temacie wiec prosze o wyrozumialosc ![]() |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Po zakończeniu skryptu, kończy się proces/wątek go obsługujący, zamykane są więc też wszelkie otwarte pliki i połączenia również z bazą.
W obrębie jednego skryptu nie ma sensu łączenie się po to by wysłać tylko jedno zapytanie. Staraj się łączyć jak najmniejszą ilość razy bo to zawsze daje narzut czasowy. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Przyjaciele php.pl Postów: 786 Pomógł: 0 Dołączył: 18.03.2002 Skąd: Wroclaw/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Hej
Cytat mam pytanka odnosnie zamykania i otwierania bazy. czy trzeba zamykac polaczenie, a jesli tak to co sie moze stac jesli tego nie zrobie :)? php wykonuje mysql_query i inne funkcje na ostatnim otwartym polaczeniu do mysql. Warto wiec uzywac mysql_query() jesli na koncu twojego pliku moze byc dolaczony inny kawalek kodu php, lub dzialsz na dwoch bazach danych. Warto tez zamykac polaczenie do bazy jesli skrypt pracuje np dosc dlugo a nie wykorzystuje otwartego polaczenia - np pobiera raz ilosc tabelek a pozniej wykonuje operacje na plikach, a nie na bazie danych.
Poki jednak skrypy sa niewielki mysel ze nie musisz sie martwic kwestia zamykania polaczen - choc dla swietego spokoju mozna to robic ;) Pozdrawiam -------------------- .. make web your home ..
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 0 Dołączył: 27.03.2003 Ostrzeżenie: (0%) ![]() ![]() |
ale skrypt jest duzy i duzo obliczen i zapytan jest przy wczytywaniu strony.
do tego czesto w srodku skryptu jest on 'przerywany' np. takim header("location: ..."); czy to nie spowoduje ze cos sie moze w bazie zakrecic, ze jakies procesy beda sie 'szlajac'? |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 315 Pomógł: 1 Dołączył: 6.08.2003 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Wszystko bedzie ok dopóki nie połączysz się z inna bazą w tym samym skrypcie. Wtedy wartało:) by użycie close
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 40 Pomógł: 0 Dołączył: 23.08.2003 Skąd: Olsztyn, Polska Ostrzeżenie: (0%) ![]() ![]() |
Cytat czy lepiej otworzyc baze na poczatku skryptu, wykonac zapytania i na koncu skryptu zamknac polaczenie i dlaczego? czy lepiej z jakichs powodow laczyc, zapytanie i zamkniecie i znow laczyc, zapytanie i znow zamknac?
Na takie pytanie trudno odpowiedzieć, gdyż część programistów pracuje w jeden, a cześć w drugi sposób. Ja stosuje jedno połączenie na cały skrypt i na końcu zawsze je zamykam. W przypadku serwerów produkcyjnych nie za często (prawie nigdy) posiadamy dostęp do kilku baz danych więc nie ma problemu kiedy musimy połączyć się z drugą bazą. Z resztą przecież nawet gdy łączymy się z kilkoma bazami i chcemy zamknąć połączenie z którąś z nich, wystarczy podać zarób połączenia jako argument mysql_close, prawda. Dobra ale się rozgadałem, jak otwieramy drzwi to przeważnie wypda je zamknąć ![]() -------------------- I've dropped something... oh my god, it's a database!!!
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 19:42 |