Strona 1 z 1

Squeeze+Perl/PHP+SQLite nie działa

: 06 lutego 2015, 18:12
autor: Ursa
Szanowni Koledzy i Koleżanki,
mam problem, który mnie przerasta.

Otóż skrypt prela wykorzystujący bazę SQLite, działający pod Windows, nie działa w Debianie.
PHP również jej nie obsługuje.
Na wszelki wypadek usunęłam pakiety SQLite 2 i 3 z Debiana i moduły perla, które następnie ponownie zainstalowałam - tylko SQLite3.
Niestety bez skutku.
Konsola sqlite3 działa bez zarzutu.

Być może ktoś z Was zna rozwiązanie tego problemu.
Może podpowiedź jak ustalić co namieszałam w moim Debianie.

Jestem starą użytkowniczką Windows, a przygodę z Linuxem zaczęłam niedawno. Znajomy radził mi, abym zmieniła dystrybucję na Ubuntu albo zainstalowała nowsze wydanie Debiana, jednak oba te rozwiązania nie nauczą mnie niczego nowego.

: 06 lutego 2015, 20:11
autor: marcin1982
Podaj jaką masz wersję Debiana:

Kod: Zaznacz cały

cat /etc/debian_version
Pokaż komunikaty po uruchomieniu skryptu w terminalu.

: 06 lutego 2015, 20:59
autor: Ursa
Wersja 6.0.10

Komunikat zwracany przez skrypt: DBD::SQLite::db prepare failed: no such table: user at ... line mimo tego, że baza zawiera tę tabelę.

Np. ten skrypt

Kod: Zaznacz cały

#!/usr/bin/perl

use strict;
use DBI;
use DBD::SQLite;

my $dbh = DBI->connect(         
    "dbi:SQLite:dbname=test.sqlite",
    "",                         
    "",                         
    { RaiseError => 1, AutoCommit => 0 },         
) or die $DBI::errstr;

$dbh->do("CREATE TABLE Friends(Id INTEGER PRIMARY KEY, Name TEXT)");
$dbh->do("INSERT INTO Friends(Name) VALUES ('Tom')");
$dbh->do("INSERT INTO Friends(Name) VALUES ('Rebecca')");
$dbh->do("INSERT INTO Friends(Name) VALUES ('Jim')");
$dbh->do("INSERT INTO Friends(Name) VALUES ('Robert')");
$dbh->do("INSERT INTO Friends(Name) VALUES ('Julian')");

$dbh->disconnect();
tworzy plik bazy ale jego wielkość to 0.

phpinfo() dla SQLite wyświetla

SQLite3 support enabled
SQLite3 module version 0.7-dev
SQLite Library 3.7.3

Directive Local Value Master Value
sqlite3.extension_dir no value no value