Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 259 Pomógł: 0 Dołączył: 12.07.2009 Ostrzeżenie: (10%)
|
Podczas pracy z tą bazą natrafiła na kilka dziwnych zachowań i nie wiem czy to normalne.
Ale opowiem od początku. Stworzyłam sobie bazę danych, ale oczywiście nie przewidziałam wszystkiego i konieczne były zmiany. Z początku dodawanie kolumn i zmiany nazw kolumn. Ale później musiałam zmieniać definicje kolumn, a tego w sqlite nie da się zrobić. Więc kasowałam kolumnę i dodawałam nową już z poprawioną definicją. Następnie zaczęłam dodawać tabele. Rozmiar bazy bardzo wzrastał ale zaczęłam używać funkcji autovacum i vacum i już zmalał. Ale wczoraj postanowiłam przepisać (skopiować ) wszystkie dane z bazy do innego pliku, tak, żeby poćwiczyć php i sqlite. I okazało się, że ta skopiowana baza jest mniejsza. Zamiast 317kb ma 314kb. Sprawdziłam zawartosć jeszcze raz i jest ta sama. Myślałam, że jakiś błąd komputera, czy dysku i wykonałam kopiowanie bazy jeszcze raz i otrzymałam inny rozmiar 313kb. Potem kopiowałam ją jeszcze kilka razy i dostałam rozmiary od 311kb do 315kb. Dlaczego tak jest? Postanowiłam potem sprawdzić szybkość baz. Użyłam funkcji microtime. I okazało się, że ta nowsza baza jest szybsza trochę. Różnica tym większa im więcej w pętli select wykonałam. Dlaczego tak jes? I teraz moje właściwe pytania. a- Czy zmiany bazy (dodawani, usuwanie i zmiany nazw kolumn i tabel) wpływają na jej jakość. Czy baza w której się nie zmienia żadnych definicji jest lepsza niż ta która się poprawia? To bardzo dla mnie ważne, bo nie zdobyłam jeszcze wiedzy pozwalającej na zrobienie baz bez poprawiania jej później. b- Czy kolejność kolumn i tabel ma jakieś znaczenie? Ta baza to plik, więc może to co pierwsze zdefiniuje, to szybciej jest odczytywane? c- W ogóle jest bardzo zaskoczona, bo ja myślałam, że w bazach tak jak i w programowaniu ogólnie można poprawiać błędy i liczy się tylko ostatnia wersja, nie ważne czy stworzona jednym poleceniem, czy 1000 poleceń. Bardzo was proszę pomóżcie mi, bo ja teraz jestem już totalnie zagubiona w tym całym sqlite i bazach danych. pozdrawiam serdecznie Jola |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%)
|
Cytat A wracając do czyszczenia bazy. Co lepiej używać vacum czy auto_vacum? I jeszcze jedno, czy jest jakaś inna baza danych tak prosta jak sqlite ale z możliwością zmiany kolumn i tabel, no żebym mogła zmieniać definicje. Bo tak to tylko mi przegrywanie skryptem php bazy zostaje A to nie jest fajne jak trzeba odczytać wszystkie rekordy ze wszystkich tabel i wpisać je do nowej bazy. MySQL Powszechnie uzywana, masz do niej duzo narzedzi, ksiazek itd. Da sie zmieniac strukture tabel, bez kasowania danych (np. typ kolumny). Co do przegrywanai bazy - masz programy dostarczane z bazka: mysql i mysql_dump - dwie linijki w konsoli i masz zgrana i wrzucana bazke. |
|
|
|
jolam modyfikowanie bazy sqlite 3 i wpływ na wydajność i optymalizacje 25.09.2009, 08:03:15
Riklaunim Jak coś usuwasz w SQLite to żeby usunąć puste miej... 25.09.2009, 10:43:26
jolam A przeczytałeś całego posta?
CytatRozmiar bazy ba... 25.09.2009, 14:48:47
Riklaunim a,b - nie, lub pomijalne. Różne testy z bazą SQLit... 25.09.2009, 16:28:48
jolam Riklaunim no ale jak to jest? Są jakieś różnice w ... 25.09.2009, 22:51:32
Riklaunim Nie ma tematu co do szybkości po modyfikacjach Ty... 26.09.2009, 02:37:26
bartg Jolam, sqlite uzywane jest tylko do mniejszych rze... 26.09.2009, 08:25:00 
Riklaunim Cytat(bartg @ 26.09.2009, 09:25:00 ) ... 26.09.2009, 13:00:50
jolam To mnie Riklaunim uspokoiłeś, że można bazę sqlite... 26.09.2009, 19:47:23
Riklaunim "mi działa" sqlitebrowser. 26.09.2009, 22:21:48
jolam Ale właśnie, że on nie działa z sqlite 3 tylko z s... 27.09.2009, 04:48:34 ![]() ![]() |
|
Aktualny czas: 9.06.2026 - 11:45 |