[SQLite/PHP] Jak utworzyć bazę danych SQLite i założyć w niej tabelę? Krzysztof Szypulski - Wtorek, 17 stycznia 2006 20:52:21
Co to jest SQLite? Jest to baza danych, która stanowi część pakietu PHP 5. SQLite nie jest samodzielną aplikacją, jest to rozszerzenie PHP 5, które odczytuje i zapisuje dane w zwykłych plikach znajdujących się na naszym serwerze. Jeżeli posiada się tylko uprawnienia do zapisu na plikach można używać SQLite jako bazy danych. Tyle tytułem wstępu. Oficjalna strona SQLite.
Zakładamy bazę danych SQLite i tworzymy w niej prostą tabele.
PRZYKŁAD
<?php /* * bazę utworzymy w pliku test.db znajdującym * się w katalogu bazy któremu nadajemy chmod 777 */ $baza = './bazy/test.db'; /* otwieramy naszą bazę, jeżeli plik nie istnieje zostanie utworzony */ $db = sqlite_open($baza); /* * wykonujemy zapytanie do bazy * w którym tworzymy tabele zawierającą 3 pola * id - index, pole typu całkowitego, klucz podstawowy * pole tak oznaczone będzie przybierało * kolejne wartości automatycznie * tak jak w MySQL za pomocą auto_increment * imie i email pola tekstowe ograniczone do 100 znaków */ sqlite_query($db, "CREATE TABLE przyklad (id INTEGER NOT NULL PRIMARY KEY, imie VARCHAR(100) NOT NULL, email VARCHAR(100) NOT NULL)") /* * w przypadku niepowodznia skrypt zostaje zatrzymany * i wyświetlany jest błąd bazy danych SQLite */ or die(sqlite_error_string(sqlite_last_error($db))); /* komunikat po udanym utworzeniu bazy */ echo "Plik bazy został utworzony!";
?>
W SQLite deklaracja typu danych jest zbędna, ponieważ nie zostanie zwrócony błąd jeżeli do kolumny typu INTEGER zostanie dodany dowolny łańcuch znaków. Taka deklaracja ma praktyczne znaczenie w trakcie sortowania danych.
Citizen
(217.173.202.xxx) Sobota, 01 kwietnia 2006 19:42:38
"http://pl2.php.net/manual/pl/ref.sqlite.php" szkoda że pod tym linkiem tylko tytuły są w jęz polskim reszta to bełkot anglo-saski .
Adam
(194.146.128.xxx) Sobota, 24 czerwca 2006 16:27:29
Piszesz że deklaracja typu danych jest zbędna, więc jeśli chcę zrobić np artykuły na sqlite, i stworzę tabelę o takiej strukturze
sqlite_query($db, "CREATE TABLE arty (id INTEGER NOT NULL PRIMARY KEY, autor VARCHAR(10) NOT NULL, email VARCHAR(25) NOT NULL, tresc INTEGER() NOT NULL)")
będzie prawidłowe, a długość arta dodanego do tabeli tresc nie będzie miała znaczenia? czy lepiej np zrobić
sqlite_query($db, "CREATE TABLE arty (id INTEGER NOT NULL PRIMARY KEY, autor VARCHAR(10) NOT NULL, email VARCHAR(25) NOT NULL, tresc NOT NULL)")
Pozdrawiam.
Od administratora:
Tak jak pisałem nie ma to znaczenia. Ale da druga opcja wygląda bardziej "profesionalnie" ;-)
Ze względu na brak czasu na moderowanie komentarzy, zawieszam możliowść ich dodawania. Masz pytanie, wykorzystaj formularz "Zadaj pytanie".
Publikowane komentarze są prywatnymi opiniami użytkowników serwisu. Serwis nie ponosi odpowiedzialności za treść opinii.
Zadaj pytanie
Nie znalazłeś(aś) odpowiedzi na nurtujące Cię pytanie? Zapytaj mnie, może będę umiał Ci pomóc.