[SQLite] "Przenoszenie" bazy danych |
[SQLite] "Przenoszenie" bazy danych |
4.12.2009, 21:26:16
Post
#1
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 22.02.2009 Ostrzeżenie: (0%) |
Słuchajcie, gdzieś czytałem, że SQLite nie obsługuje zapytań typu "ALTER", a skoro tak to tradycyjną dla SQL metodą nie da się np. dodać nowej kolumny do tabeli w bazie danych. Ale mam pytanie - czy da się taką operację zrobić "na okrętkę" to znaczy stworzyć nową tabelę (z wstawioną już dodatkową kolumną) i przenieść doń zawartość "starej tabeli? Jakiego polecenia można by tu użyć?
Pozdrawiam! |
|
|
18.12.2009, 14:34:19
Post
#2
|
|
Grupa: Zarejestrowani Postów: 131 Pomógł: 1 Dołączył: 15.10.2009 Skąd: gdańsk Ostrzeżenie: (0%) |
|
|
|
19.12.2009, 11:36:01
Post
#3
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 22.02.2009 Ostrzeżenie: (0%) |
Ale to działa tylko w SQLite od wersji 3.0 wzwyż, a ja mam PHP5 + SQLite 2.0 (niestety bez możliwości aktualizacji), dlatego pytam
|
|
|
19.12.2009, 23:55:40
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) |
ściągnij sobie starszą wersję SQLite Manager'a do mozilli (miałem reinstalkę i teraz ściągnąłem żeby dać Ci odpowiedź ale... jest nowsza wersja newet z definicją własnych funkcji - akurat pod mozillą to w js...)...
w starszej wersji był zawsze komunikat, że alter nie do końca jest zaimplementowane oraz dosyć niebezpieczne dla bazy i wyświetlona była komenda z zapytaniem SQL... generalnie polegało to na kopiowaniu tabeli do tabeli tymczasowej, drop tabeli głównej i utworzenie jej od nowa z tymczasowej z modyfikacjami po czym drop tymczasowej - czyli kopiuj do tymczasowej nawet może już przystosowanej, kasuj główną i odtwórz główną, kasuj tymczasową... edit... a tak sobie wróciłem do tego tematu bo po niewczasie przypomniałem sobie, że komunikat był przy czym innym ;p - sorka ;p za to gotowe rozwiązanie:
gdzie bazowa tabela to: CREATE TABLE "main"."test" ("id" INTEGER PRIMARY KEY NOT NULL ,"k1" INTEGER,"k2" TEXT); i w powyższym dodało się kolumne Ten post edytował zegarek84 20.12.2009, 00:53:39 -------------------- Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.
|
|
|
Wersja Lo-Fi | Aktualny czas: 28.04.2024 - 11:14 |