Gestire un database da riga di comando

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Scrivi risposta
Avatar utente
fiamma
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 256
Iscrizione: lunedì 31 marzo 2008, 21:05

Gestire un database da riga di comando

Messaggio da fiamma »

Qualche d'uno può consigliarmi un semplice database da gestire da riga di comando, senza dover scrivere password o cose simili?
Mi servirebbe per uno script che cataloga film.

So che ci sono Mysql e PostrgreSQL ma mi sembrano un po difficilotti.
Openoffice-base sembra si possa utilizzare solo dal lato grafica.

Grazie
Avatar utente
spina696
Prode Principiante
Messaggi: 171
Iscrizione: domenica 18 febbraio 2007, 14:51

Re: Gestire un database da riga di comando

Messaggio da spina696 »

Adesso non saprei dirti per i linguaggi di scripting,ma cmq la sintassi delle query mysql o postgresql non è difficilissima...dopo un po si impara e la si usa benissimo.. ;)
Avatar utente
fiamma
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 256
Iscrizione: lunedì 31 marzo 2008, 21:05

Re: Gestire un database da riga di comando

Messaggio da fiamma »

Però o letto che richiede password e configuraizoni varie.
Mi servirebbe un database privo di queste cose perchè lo script che sto scrivendo dovrebbe essere usato anche da terzi (su altri Pc) .

Il fatto che di database non ci capisco una "h", non li ho mai usati.
Avatar utente
Berghem
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 2265
Iscrizione: giovedì 14 aprile 2005, 22:28
Località: Dalmen

Re: Gestire un database da riga di comando

Messaggio da Berghem »

guarda sqlite
Avatar utente
jc54
Prode Principiante
Messaggi: 172
Iscrizione: martedì 29 gennaio 2008, 12:46

Re: Gestire un database da riga di comando

Messaggio da jc54 »

Ma con Mysql puoi anche gestire un database senza impostare passw. Certo la cosa non è molto sicura, ma se se metti i privilegi dell'utente solo in lettura non possono fare casini. Diversa la cosa se devono aver accesso completo al db.
Saluti

JC54
Linux is like a tepee: no windows, no gates, apache inside.
Avatar utente
paper0k
Rampante Reduce
Rampante Reduce
Messaggi: 7220
Iscrizione: lunedì 2 ottobre 2006, 13:39
Contatti:

Re: Gestire un database da riga di comando

Messaggio da paper0k »

Quoto
Berghem ha scritto: guarda sqlite
un esempio pratico è qui ;)
Chiunque può essere ragionevole, ma esser sani di mente è raro (Oscar Wilde)
Wiki|Blog|Twitter|Identi.ca|last.fm
Avatar utente
fiamma
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 256
Iscrizione: lunedì 31 marzo 2008, 21:05

Re: Gestire un database da riga di comando

Messaggio da fiamma »

Ok sto provando con sqlite...ma ecco il problema.

Da riga di comando ho creato il database e la tabella con i rispettivi campi:

sqlite3 data_archivio.db
SQLite version 3.4.2
Enter ".help" for instructions
sqlite> create table Films (
  ...> Id integer,
  ...> Titolo char(80),
  ...> Regia_A char(40),
  ...> Regia_B char(40),
  ...> Autore_A char(40),
  ...> Autore_B char(40),
  ...> Genere char(40),
  ...> Data varchar(40),
  ...> Durata varchar(10),
  ...> Nazione char(40),
  ...> Voto_IMDb varchar(40)
  ...>  );

Poi dentro uno script bash ho scritto il comando per inserire i dati nel database come nell'esempio del link che ha postato paperOK:

sqlite3 data_archivio.db "insert into Films (Id,Titolo,Regia_A,Autore_A,Genere,Data,Durata,Nazione,Voto_IMDb) values ('$titolo','$regista','$autore','$genere','$data','$durata','$nazione','$imdb');
....ma dentro al database non viene scritto niente.
Avatar utente
fiamma
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 256
Iscrizione: lunedì 31 marzo 2008, 21:05

Re: Gestire un database da riga di comando

Messaggio da fiamma »

Forse lo sbaglio è nel typeness. Al posto di char dovrei mettere TEXT.
Avatar utente
fiamma
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 256
Iscrizione: lunedì 31 marzo 2008, 21:05

Re: Gestire un database da riga di comando

Messaggio da fiamma »

L'errore è che sqlite non importa il carattere apostrofo ' .  >:(
Come risolvo?  ::)
Avatar utente
paper0k
Rampante Reduce
Rampante Reduce
Messaggi: 7220
Iscrizione: lunedì 2 ottobre 2006, 13:39
Contatti:

Re: Gestire un database da riga di comando

Messaggio da paper0k »

Codice: Seleziona tutto

\'
? ;)
Chiunque può essere ragionevole, ma esser sani di mente è raro (Oscar Wilde)
Wiki|Blog|Twitter|Identi.ca|last.fm
Avatar utente
fiamma
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 256
Iscrizione: lunedì 31 marzo 2008, 21:05

Re: Gestire un database da riga di comando

Messaggio da fiamma »

paper0k ha scritto:

Codice: Seleziona tutto

\'
? ;)
Però i dati vengono passati come variabile.
Avatar utente
fiamma
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 256
Iscrizione: lunedì 31 marzo 2008, 21:05

Re: Gestire un database da riga di comando

Messaggio da fiamma »

Per aggirare il problema bisogna aggiungere un'altro apostrofo ' .
Quindi se il titolo di un film sarà L'arco diventerà l''arco.

Ma come faccio se i dati li passo come variabile?

Esiste un modo con sed per raddoppiare questo carattere?
Avatar utente
fiamma
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 256
Iscrizione: lunedì 31 marzo 2008, 21:05

Re: Gestire un database da riga di comando

Messaggio da fiamma »

Trovato

sed -i s/\'/\'\'/g
Avatar utente
garak
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1649
Iscrizione: lunedì 13 giugno 2005, 13:37
Desktop: Gnome
Distribuzione: Ubuntu 24.04
Sesso: Maschile
Località: Roma
Contatti:

Re: Gestire un database da riga di comando

Messaggio da garak »

Benvenuto nel mondo dei db.  :)
Quello che stai cercando di fare si chiama "escaping" e non può essere limitato ai soli apici, perlomeno se vuoi fare un'applicazione sicura. Dovresti preoccuparti anche dei puntievirgola, dei commenti e in generale di tutto ciò che potrebbe provocare una sql injection.
Avatar utente
fiamma
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 256
Iscrizione: lunedì 31 marzo 2008, 21:05

Re: Gestire un database da riga di comando

Messaggio da fiamma »

garak ha scritto: Benvenuto nel mondo dei db.  :)
Quello che stai cercando di fare si chiama "escaping" e non può essere limitato ai soli apici, perlomeno se vuoi fare un'applicazione sicura. Dovresti preoccuparti anche dei puntievirgola, dei commenti e in generale di tutto ciò che potrebbe provocare una sql injection.
Conosci un manuale in italiano per sqlite?
Avatar utente
garak
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1649
Iscrizione: lunedì 13 giugno 2005, 13:37
Desktop: Gnome
Distribuzione: Ubuntu 24.04
Sesso: Maschile
Località: Roma
Contatti:

Re: Gestire un database da riga di comando

Messaggio da garak »

Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 2 ospiti