Italian community of Lazarus and Free Pascal
Programmazione => Databases => Topic aperto da: nik3500 - Ottobre 18, 2012, 02:53:18 pm
-
Ciao,
io ho cercato in giro circa materiale freeware e opensource ma non ho trovato niente
Quale tipo di database(con indice) mi consigliate come standard che possa andare bene sia su xp(ho un portatile che ancora mi funge bene) che win7/8 che funzioni solo con l'eseguibile senza dovere installare librerie..ect??
saluti
nik3500
-
firebirdsql embedded
-
Grazie...un nome mai sentito...
nik3500
-
Nik,
di materiale open in giro ce n'è fin troppo.
Dipende da che uso ne devi fare.
Parli di Excel e Access, due cose abbastanza diverse tra di loro.
Se hai bisogno di gestire solo le "tabelle", SQLite è un buon compromesso tra semplicità e funzionalità.
FirebirdSQL (in tutte le sue versioni) è un DBMS completo. (Tipo SQLServer o Oracle, per intenderci, senza tutte le estensioni che si portano dietro questi prodotti).
La differenza tra SQLite e FirebirdSQL è enorme, ma se non hai bisogno delle stored procedure, gestione utenze (lato DB) ... SQLite è ottimo.
SQLite è montato a bordo degli IPhone.
Usato dal Team Mozzilla per Firebird per la cache del browser.
Nelle ultime versioni di SVN viene creato un DB locale con SQLite adattato.
Ora sta a te capire cosa ti serve.
Ciao.
-
Grazie,ma voi siete ad un livello troppo alto..io come detto usavo file dbf(neanche paradox) solo come gestione database e indice,solitamente non mi servono database sofisticati..
Già a sentire il SQL mi fa perdere nella giungla.....ahahhaah
Grazie...comunque...
nik3500
-
Allora Prova TDBF .. è una libreria per la gestione XDBF come formato.
Non credo supporti Paradox, ma tutti i vari formati del DBF sì.
Non so se ne esiste il porting sul lazzarone, ma sicuramente per Delphi c'è ;)
-
con i dbf ci ho lavorato (e molto) anche io e capisco che vuol dire sentirsi spaesati ;)
però è anche vero che per iniziare ci sono delle analogie tra dbf e sql; ad esempio:
- directory dbf = database sql
- file dbf = tabella
detto questo puoi anche ignorare (o quasi) la sintassi sql lavorando sempre con tutti i record (esattamente come nelle tabelle dbf) e credo che piano piano ti troverai nel mondo sql senza traumi :D
-
Mi sa che sono bloccato,sono programmi che vanno oltre la mia conoscenza..
firebirdsql embedded non trovo un eseguibile x creare/aprire una tabella con facevo con i dbf
isql uguale..
cercherò qualcosa d'altro...oppure tornerò a delphi7
grazie lo stesso
-
comunque se nel frattempo vuoi fare delle prove ti segnalo un paio di tool per la gestione di database firebirdsql
per windows (uso non commerciale), sicuramente il più completo
http://ibexpert.net/ibe/index.php?n=Main.DownloadFree
per win e linux, open source, ottimo da molti punti di vista
http://flamerobin.org/
non si sa mai un giorno ti venisse la curiosità di vedere le tue tabelle in un db facci sapere ;)
-
nik3500 (http://www.lazaruspascal.it/index.php?action=profile;u=669), la questione è che SQL è un vero e proprio linguaggio a parte.Come diceva il buon nomore, se usi le tabelle, puoi anche ignroare il linguaggio.
Apri le tabelle esattamente come facevi prima.
Table1.Open;
Table1.Close;
I wrapper funzionano nella stassa maniera. Poi se è l'ide che ti sembra vetusto rispetto a delphi, nessun problema. In ogni caso, cerca prima TDBF per Lazarus, prima di demordere. Firebird è una bomba, ma se ti rende nervoso, lascialo perdere e lavora come sei abituato.
Da quello che leggo ti senti sconfitto. Ma e' solo un programma. Una prova alla volta, piano piano, le cose le superi e le impari :D
PS:
Io devo iniziare a lavorare in COBOL per lavoro ... vedi tu....
-
PS:
Io devo iniziare a lavorare in COBOL per lavoro ... vedi tu....
condolianze Stilgar, condolianze... io il cobol l'ho dovuto conoscere e... condolianze di nuovo :D
ma che cacchio ci fai col cobol!? :D
-
boh..l'ho tirato giù il tdbf ma mi da errori in compilazione,ho spostato cartelle qua e là,mi sa che devo trovare la voce path..delphi7 l'ho disinstallato
..
-
Nomore. Mi hanno spedito da cliente. Il cliente usa cobol.
Io sono coinvolto proprio nella parte in mezzo Java/Cobol. Quindi non solo devo sapere Java, (nessun problema di base, lo uso dalla vecchia versione 1.1. 8) , ma ora devo imparare a usare COBOL.
Solo che le stesse parole hanno significati completamente diversi. Se parlo di Stack di chiamata, cadono dal pero, senza capire cosa sto chiedendo..... gli Abend dovrebbero essere le exceptions ... ma non sono sicuro che mi abbiano detto di sì con cognizione di causa ... sembravano perplessi.
Nik. Doveri vedere cosa dice il compilatore sulla tua macchina per poterti pilotare nella soluzione. Nomore, tu hai Delphi7 sulla tua macchina per aiutarlo passo passo?
-
si D7 ce l'ho ma io credevo che TDBF fosse da usare sotto lazarus
mi sbaglio nik3500?
-
Se parlo di Stack di chiamata, cadono dal pero, senza capire cosa sto chiedendo.....
e vorrei vedere...
per provare a farli capire prova ad aggiungere "section" in fondo ad ogni cosa, ad esempio: Stack di chiamata section :D
-
boh..l'ho tirato giù il tdbf ma mi da errori in compilazione,ho spostato cartelle qua e là,mi sa che devo trovare la voce path..delphi7 l'ho disinstallato
..
Aspetta un secondo, TDBF è nei sorgenti di FPC, non devi tirare giù niente !!!!
Prova ad aggiungere alla uses Dbf, DB, Dbf_Common, dovresti avere tutto ciò che serve.
P.S. Non sarebbe meglio aprire un topic al di fuori della sezione dei saluti o spostare questo? L'argomento potrebbe essere interessante e qui rischierebbe di avere poca visibilità ...
Ciao, Mario
-
Ho provveduto a splittare il topic e a spostarlo nella sezione adeguata :)
Buon proseguimento di discussione! ;)
-
Bravo Legolas.
Nomore, ma le Section e le Program sono concorrenti alla creazione dello stack di chiamata.
Solo che vengono chiamate in modo diverso ... c'è la CALL {program} che fa una chiamata sincrona ad un altro pezzo di codice/programma.
Le section vengono chiamate con il perform. Ma la perform fa un botto di cose. Funge da gestore di cicli ... while,repeat insomma un "troiaio" ... :(
-
ciao ragazzi!
volevo chiedervi ,ma ...
nella palette non ci sono i componenti tipo dbe o ado da dove cliccare una TABLE da mettere sulla form come in delphi2007 ?
ciao
-
Gimpa ... Lazarus ha i suoi ...
Se selezioni DataAccess hai la palette con alcuni componenti di connettività.
SQLdb ne hai degli altri ...
Puoi aggiungere ZeosLib per aggiungere altri componenti di connettività ...
Non sento affatto la mancanza di connettività al DB con lazarus ... anzi per certi versi è migliore ;)
Stilgar
-
Ah ho capito ! posso scegliere uno di questi non ho problemi in merito ! mi serve solo per un database locale !
in delphi usavo il BDE (borland database engine) che poi ho dovuto lasciare perchè non più supportato (sono passato ad ADO) !
quale DATAACCESS mi consigli di scegliere che è più simile a quelli che usavo ?
Ciao e grazie
-
Ti giro la domanda ...
Che engine SQL hai installato sulla tua macchina?
Firebird SQL? Usa gli access per quello.
Ciao
-
Al momento ho installato solo LAZARUS !!!
se devo installare un Engine al posto di un'altro vorrei scoprirlo (deciderlo) prima di farlo ! che sia il più simile o almeno il più utile come compatibilità per i recenti OS ...
ciao
-
credo che la domanda fosse: a quale database devi accedere?
-
Gianpa ...
Allora escludi SQLServer, gli altri sono quasi tutti portabili nelle varie piattaforme.
Non credo che tu debba andare sui 3270, quindi non sei vincolato ad usare DB2 ...
Poi è questione di gusti.
Firebird SQL ha una buona portabilità.
Vuoi scaricarti Oracle Express? Gira su Unix/linux e Windows... non so su mac.
Stilgar
-
Il database me lo creo per le varie applicazioni !
in delphi c'era il database desktop , poi è stato rimosso dall'IDE ,ma si poteva raggiungere nella cartella dedicata!
l'Ultimo l'avevo creato in ACCESS aprendolo da ADOtable !
magari potessi recuperarlo penso che quello sia compatibilissimo !
ma devo ancora orientarmi in LAZARUS !
comunque grazie per le risposte , ne farò tesoro
ciao
-
ciao gianpa
passare da database desktop o access ad un dbrms sql è un notevole passo avanti.
fidati, non pensare al fatto che non puoi usare quegli strumenti che già conosci e tuffati (nel vero senso) nel conoscere il mondo sql.
tra i database ti consiglio di dare uno sguardo a
- FirebirdSql o Postgres: per conoscere un db multipiattaforma (girano su praticamente tuggli i maggiori OS) e scalabile (da monoutente a C/S)
- SqlLite: praticissimo e diffusissimo, soprattutto nel settore mobile, ma IMHO orientato ad applicazioni dove il db non raggiunge dimensioni esagerate (io di un db SqlLite di 5Gb non ho ancora notizie)
- MySql: la fa da padrone nel mondo web ma quasi sconosciuto in altri settori
- Oracle: se devi andare da aziende di un certo tipo
-
Grazie per l'esaustiva e chiara risposta !
Ciao
-
Mi sembra che firebirdsql possa fare al mio caso !!!
è gratuito ?
Si installa a parte o deve essere integrato in lazarus per poter scegliere i propri Componenti come per fastreport in Delphi (per esempio) ?
ciao
-
Per firebird sql : http://www.firebirdsql.org/
Ne esistono 3 versioni.
Classic.
Super Server.
Embedded.
Il connettore è sempre lo stesso per entrambe le versioni.
Lazarus ha i suoi DataSource, ma hai anche delle alternative. ZeosLib è molto buono (http://zeos.firmos.at/). La libreria in questione ha 2 versioni. Lazaus e Delphi.
Quindi per una soluzione potabile al 100% su entrambi gli ambienti di sviluppo, ti consiglio Zeos.
Stilgar
-
grazie ! provo subito qcosa poi ti faccio sapere!
ciao
-
ho installato firebirdsql classic e FlameRobin per creare la tabella che mi serve , ma nel path mi chiede anche il nome del file che se non esiste mi dà errore !!!
Se voglio crearlo è ovvio che ancora non esiste !
Cosa sbaglio ?
Ciao
-
Forse stai agganciando il db e non lo stai ancora creando?
Prima di creare la tabella, in genere ti chiede dove creare il db ...
Stilgar
-
vado nel menu "create new database" , si apre una finestra dove mi chiede il tutto compreso il PATH(con sfoglia) e vuole il nome del file!
ciao
-
E tu gli dai il nome che ti sta chiedendo?
O premi cancel?
-
se gli dò il nome che voglio per il nuovo DATABASE mi dà errore;
se faccio sfoglia e scelgo un database già esistente tutto ok!
solo che io non voglio aprirne uno esistente ,ma crearne uno NUOVO!
ciao
-
ho trovato una guida, prova a seguire questa passo passo
http://swinbrain.ict.swin.edu.au/wiki/Create_a_Firebird_Database (http://swinbrain.ict.swin.edu.au/wiki/Create_a_Firebird_Database)
-
ragazzo mio sei portentoso !!!
quì c'è proprio tutto !
avevo provato anch'io a cercare ,ma questo non l'avevo trovato!
grazie,grazie,grazie
-
grazie per il portentoso, ma mi sembra esagerato ;)
per il resto, firebirdsql + flamerobin, secondo me... hai imboccato una strada ottima
-
hahaha, ora Nomore non fare la ruota come i pavoni ;)
Diciamo che è buono anche il porting di phpMyAdmin per Firebird SQL ;)
Hanno pescato a piene mani dalla versione MySQL.
(Ora tutti a cercalo e provarlo :D )
-
phpMyAdmin va bene ma FlameRobin ha delle cose che altri gestori si sognano.
se ad esempio modifichi una stored procedure che ha delle dipendenze, flame robin ti prepara uno script che:
- annulla le dipendenze (tutte!)
- fa l'alter della procedura/funzione/trigger/tabella/indice/quello che ti pare
- ripristina le dipendenze
altra cosa utilissima, ti permette di salvare il contenuto dei campi blog...
se lavori col web molte dipendenze non ci sono mai: i db sono semplici di solito. lavorando più pesantemente quella funzione fa la differenza come la pastiglia blu o la rossa su matrix! ahahahahah
-
Nomore, occhio ... ste feste ti stanno facendo male... "troppi dolci e gelati" recitava un personaggio in un film di animazione ...
-
perchè i vini e gli spumanti non ce li metti? ;)
-
purtroppo però anche seguendo le istruzioni passo-passo (io dimenticavo di registrare il server) mi dà lo stesso errore:unsuccessful execution caused by a system error that precludes successful execution of subsequent statements
ho provato anche eseguendo come amministratore ,ma non funge!
ciao
-
allora:
- il servizio Firebird Guardian gira e l'antivirus/firewall ti lasciano passare? (prova con: telnet ip-address 3050)
- l'utente con il quale crei il db è SYSDBA?
- la password di SYSDBA è "masterkey"? (o se l'hai cambiata verifica che sia inserita correttamente)
- hai permessi di scrittura nella cartella in cui vai a creare il file FDB? (se non sei sicuro mettili per "everyone" come "controllo completo")
sistemate queste cose deve funzionare per forza ;)
-
- il servizio di firebird sql è attivo?
-
cioè?
non avendolo mai usato prima non saprei!!!
in ADO o col DBE trovavo già tutto disponibile dall'installazione!
io ho solamente installato !
ciao
-
Firebird SQL è un servizio windows o demone linux (visto che hai scaricato la versione classic).
Il telnet che ti suggeriva nomore serve a vedere se su qualla porta di rete, risponde il servizio.
Se non risponde nulla, vuol dire che il servizio non è attivo.
Mettilo servizio attivo all'avviso, se l'installazione non lo ha fatto.
Quando sarai più pratico, poi farlo attivare su richiesta. Ma visto che sei all'inizio tienilo attivo all'avvio della macchina.
Stilgar
-
sì ,ma come si fà ad attivare?
clicco sul menu e non si lancia nulla (firebird 2.5)
devo lanciare qualche tool ?
ciao
-
Devi andare sui servizi di windows e li trovi ...
-
i servizi sono due:
Firebird Guardian
Firebird Server
almeno il primo deve essere impostato su avvio automatico, se tutti e 2: meglio.
Una volta che sei sicuro che i servizi sono avviati, controlla con telnet che sono raggiungibili.
Se telnet non stabilisce una connessione, disattiva il firewall ed anche l'antivirus, poi riprova.
Se con tutto disattivato funziona, riavviane uno e poi riprova ancora. Così si riesce a stabilire chi è che blocca il servizio.
Facci sapere.
-
ho cercato bene ,ma tra i servizi windows non li trovo proprio !
cosa vuol dire ? non sono stati installati correttamente ?
ciao
-
se non li trovi potresti non aver installato correttamente FirebirdSql
guarda nell'immagine allegata, sicuro che non trovi nulla del genere?
guarda anche nel pannello di controllo se trovi Firebird Manager
-
Salve,
scusate se vi faccio perdere tempo e la pazienza questi database nuovi mi portano in altomare
(xchè non so neanche da dove partire, i comandi che usate sono sconosciuti x me,missà che mi comprerò un libro e vedere come caspita si può maneggiare questi database nuovi,quanto rimpiango il bde e i suoi 7 libri dove pigliavo il codice e lo aggiustavo x le mie operazioni..)
Certo la scelta era sul firebirds embedded anche se ho installato il superserver ma se poi il mio programmino lo passo su un'altro pc c'è forse da impostare i servizi windows,telnet,server o altro(manco so cosa sono.....)
Quello che volevo creare era un programma x gestire un torneo di briscolone(appassionato e abbiamo creato un gruppo qui a Brescia,quindi sarà freeware) e poi passarlo ad altri pc,quindi la gestione pagamenti,torneo,torneo e pasto,pasto (ecco il database con nome e tre checkbox)
e poi dai checkbox torneo,creare N tavoli da 5(o da 6/7 dipende dal numero di partecipanti)
Chiaramente i turni saranno 3-4-5 quindi le persone(finche la matematica lo consenta già sto male a trovare un algoritmo e qui ci sarà da penare a rubare codice da qualche parte)non devono ripresentarsi di nuovo(quindi penso a 2 database con nomi nemici che diventano amici quando si incontrano).....
Mi debbo correggere,qualcosa ho trovato dai vostri link,tipo le 12 lezioni e un link dove creare 1 firebird database(anche se non vedo il senso,nel mio caso,di creare un database con tanto di amministratore o server)
Quale libro mi consigliate di comprare x imparare usare il firebirds( anche se penso di lavorare SOLO su database locali con tanto di codice scritto e tutorials ed esempi...)
Tanti auguri di buone feste a Tutti
-
se non li trovi potresti non aver installato correttamente FirebirdSql
guarda nell'immagine allegata, sicuro che non trovi nulla del genere?
guarda anche nel pannello di controllo se trovi Firebird Manager
non li trovo !!!
lancio il firebird e trovo l'icona in basso a dx sulla barra , niente altro!
e nel pannello non c'è alcun firebird manager
come devo fare ? re-installare ?
ciao
-
ricordi se hai installato come servizio o come applicazione?
-
sì ,ho installato come applicazione perchè era consigliato in un documento allegato!
-
stavo pensando di disinstallare ! poi re-installando mi conviene scegliere EMBEDDED invece di CLASSIC visto che mi interessa solo avere un database locale !??
così seguo passo passo le istruzioni che lavorano con embedded!
ciao
-
Come applicazione, che io sappia, è consigliato quando non si hanno i permessi di amministrazione.rifai l'installazione come servizio, quando si può è meglio.
-
ok allora ri-installo !
Installo come servizio e il server ? classic o embedded ?
ciao
-
Ho re-installato come SERVIZIO ed ora pare tutto ok !
vi terrò informati!
Grazie per il SUPPORTO