Discussione:SQLite

Ultimo commento: 2 anni fa, lasciato da InternetArchiveBot in merito all'argomento Collegamenti esterni interrotti

La pagina dice che SQLite è di un "software libero di pubblico dominio". Ho il sospetto che sia una contraddizione: software libero è una definizione inventata da Richard Stallman e ha un significato preciso. E' vero che l'assenza di una licenza garantisce, di per sè, le "libertà del software" definite da GNU, però non credo dia l'obbligo di ridistribuire il software solo se accompagnato dal codice sorgente (ricordo che la GPL impone questa condizione). Se su quest'ultimo punto ho ragione, probabilmente non rientra nemmeno nella definizione di Stallman di Free Software. Dico questo perchè, ad esempio, mi pare che le licenze BSD-style non siano considerate propriamente free.
L'ideale sarebbe se qualcuno che si intende di diritto informatico ci chiarisse le idee in proposito e, se necessario, modificasse la pagina.
--Sante Caserio 14:20, Mar 22, 2005 (UTC)

Software libero l'ha sì inventato Stallman, ma non per questo è ridotto alla sua GPL: oggi come oggi è "opensource" tutto ciò che è definito tale su opensource.org e, per fare un esempio, la licenza BSD è esplicitamente elencata lì, benché non "richieda" molte delle limitaizoni "virali" della GPL. PD, in questa ottima, è sicuramente una licenza libera. Oserei quasi dire "la più libera in assoluto".
Le licenze BSD non sono considerate "compatibili con la GPL", ma questo non significa che non siano opensoruce. O meglio, lo significa solo se chi parla è un "fissato della GPL" o qualcosa del genere.
IANAL, ma secondo me l'esempio della BASD (e altre) su opensource.org da questo unto di vista è abbastanza "provante".
Per maggiori informazioni basta leggere la definizione legalese di opensource.
--Lapo Luchini 15:21, Mar 22, 2005 (UTC)

E' tutto vero, ma attenzione: Open Source e Free Software sono due cose diverse. Ciò che è free è anche open, ma ciò che è open non è per forza free. Open Source è un marchio registrato dall'OSI, e sicuramente include anche il software senza licenza (in quanto non viola le famose "10 regole"), ma non sono altrettanto sicuro che un lavoro di pubblico dominio sia definibile free (termine coniato prima da Stallman e molto più restrittivo). --Sante Caserio 17:49, Mar 22, 2005 (UTC)

PS, con questo non deve sembrare che io voglia sminuire ciò che non è free: c'è chi dice che la GPL è una licenza esagerata e preferisce di proposito licenze open source meno restrittive. Io non sono per niente convinto ma riconosco che c'è del vero anche in questo punto di vista. E' chiaramente una questione di opinioni, però è importante tenere distinti i due termini a mio avviso, soprattutto in ambito divulgativo. --Sante Caserio 17:52, Mar 22, 2005 (UTC)

dati binari modifica

"non è in grado di gestire dati binari in modo sicuro": questo non è vero solo per la 2 e non per la 3? Anche nella 2, peraltro, l'unica eccezione è il carattere 0, tutti gli altri sono utilizzabili con estrema tranquillità; sono inoltre dati ni esempio degli "encoder per dati binari" che permettono di immagazzinare anche il carattere 0, quindi il problema è facilmente aggirabile anche se, è vero, richiede un minimo di attenzione (ma d'altra parte è un DB così diverso dagli altri che difficilmetne qualcuno convertirà le cose "alla cieca" senza neanche leggerne il manuale, no?) --Lapo Luchini 15:33, Mar 22, 2005 (UTC)

Io sono del parere che se c'è anche un solo carattere che può fare casino, il programma non gestisce i binari in modo sicuro. Dopodichè è vero che è facile aggirare il problema, e ai programmatori C può addirittura sembrare naturale stare attenti a quel carattere, però che c'entra? Anche il lock può essere implementato in modo molto banale, se tu sai che per esempio hai solo 2 processi che possono accedere a una tabella, però il discorso è sempre quello: devi sapere che la gestione del problema spetta a te. Non credo che questo significhi sminuire il programma, proprio perchè come dici tu è un DB "diverso" dagli altri... anzi non è un dbms, è una libreria! E come tale non ha senso paragonarlo a MySQL o altri dbms, è come paragonare Word a Excel.

Comunque se tu hai letto sul sito che la versione 3 gestisce i dati binari correggi pure quello che ho scritto...

--Sante Caserio 17:45, Mar 22, 2005 (UTC)

Rispondendo cinque anni dopo... SQLite 3 ha supporto specifico per i BLOB. -- IANEZZ  (msg) 12:54, 14 gen 2010 (CET)Rispondi

Commenti sugli svantaggi modifica

Ho usato SQLite per un progetto relativamente complesso che aveva bisogno di crearsi una cache in memoria di alcune decine di migliaia di oggetti con una serie di attributi variabili che vengono modificati rapidamente. La cache viene interrogata da altri processi con un protocollo proprietario su socket.Si può immaginare che la scelta del meccanismo della cache era critico.

Per la concorrenza (si parla di 15-20 thread, uno che scrive, gli altri che leggono) e' stato facile gestendo un semplice semaforo per l'accesso al DB (che ho astratto con una classe specializzata per gestire la cache usando una classe per gestire gli oggetti). Per la cache delle query: stavo in effetti pensando di implementarla: creare un oggetto che tira fuori tutto il risultato e poi lo restituisce man mano: ho notato infatti che, almeno nella versione due, se hai una query in corso la tabella e' lockata per gli inserimenti - il che potrebbe essere drammatico se la query stessa è "lunga". Se ti serve un protocollo di rete per accedere al DB, usa un DB "vero" tipo MySQL, non SQLite!!! Sui dati binari è stato già detto qualcosa: io userei qualche forma di escaping, certo è scocciante... ma magari qualcosa si può fare dai sorgenti. Sui permessi: basta gestirli usando i permessi unix... anche se ovviamente può dipendere da molti fattori se questo è sufficiente e appropriato o meno. --Utente:KALLISTI 19/06/2005

Form, Report modifica

A quanto mi risulta sqlite non ha nessuno strumento per gestire reports e forms come fa, ad esempio, MS Access

Ho aggiunto DaDaBIK, che permette di creare Web form per SQLite--79.19.41.141 (msg) 16:56, 16 feb 2011 (CET)Rispondi

Collegamenti esterni modificati modifica

Gentili utenti,

ho appena modificato 1 collegamento esterno sulla pagina SQLite. Per cortesia controllate la mia modifica. Se avete qualche domanda o se fosse necessario far sì che il bot ignori i link o l'intera pagina, date un'occhiata a queste FAQ. Ho effettuato le seguenti modifiche:

Fate riferimento alle FAQ per informazioni su come correggere gli errori del bot.

Saluti.—InternetArchiveBot (Segnala un errore) 16:51, 30 lug 2019 (CEST)Rispondi

Collegamenti esterni modificati modifica

Gentili utenti,

ho appena modificato 1 collegamento esterno sulla pagina SQLite. Per cortesia controllate la mia modifica. Se avete qualche domanda o se fosse necessario far sì che il bot ignori i link o l'intera pagina, date un'occhiata a queste FAQ. Ho effettuato le seguenti modifiche:

Fate riferimento alle FAQ per informazioni su come correggere gli errori del bot.

Saluti.—InternetArchiveBot (Segnala un errore) 18:57, 23 mar 2020 (CET)Rispondi

Collegamenti esterni interrotti modifica

Una procedura automatica ha modificato uno o più collegamenti esterni ritenuti interrotti:

In caso di problemi vedere le FAQ.—InternetArchiveBot (Segnala un errore) 10:59, 18 giu 2020 (CEST)Rispondi

Collegamenti esterni interrotti modifica

Una procedura automatica ha modificato uno o più collegamenti esterni ritenuti interrotti:

In caso di problemi vedere le FAQ.—InternetArchiveBot (Segnala un errore) 07:50, 18 mag 2021 (CEST)Rispondi

Ritorna alla pagina "SQLite".