View Full Version : [DATABASE] Svincolare archivio da dbms
Ciao a tutti,
Premetto che ho le idee un po' confuse e ho bisogno di alcune nozioni per poter prendere una decisione riguardo al seguente caso:
Valutando lo sviluppo di un programma, i cui dati potrebbero essere più o meno complessi, ho pensato che l'utilizzo di un database,(creando un archivio con i dati opportunamente correlati) sarebbe meglio gestibile piuttosto che sviluppare una gestione dei dati tramite un linguaggio di programmazione.
La mia domanda è se costruissi un archivio utilizzando un dbms e sviluppassi un'interfaccia tramite un linguaggio di programmazione per gestire tale archivio. Si può in un secondo momento utilizzare creare query e modificare tale archivio soltanto tramite l'interfaccia da me creata. Oppure necessito di avere il dbms installato sul pc?
Una volta compilato il programma, quest'ultimo contiene le istruzioni per gestire l'archivio o necessita di chiamare delle funzionalità esterne al software, facenti parte del dbms?
Per si quanto riguarda la sicurezza si può utilizzare un database esclusivamente con il mio software, impedendone la modifica dall'esterno, anche dal dbms stesso?
Grazie
La mia domanda è se costruissi un archivio utilizzando un dbms e sviluppassi un'interfaccia tramite un linguaggio di programmazione per gestire tale archivio. Si può in un secondo momento utilizzare creare query e modificare tale archivio soltanto tramite l'interfaccia da me creata. Oppure necessito di avere il dbms installato sul pc?
Il dbms da qualche parte deve stare, e le sue informazioni sono accessibili e modificabili tramite il linguaggio SQL ovunque sia.
Una volta compilato il programma, quest'ultimo contiene le istruzioni per gestire l'archivio o necessita di chiamare delle funzionalità esterne al software, facenti parte del dbms?
La domanda è un po' vaga. Se ti riferisci alle informazioni per connetterti al database (indirizzo, usarname e password...) puoi salvarle sia internamente che esternamente al software come qualsiasi dato testuale, ovviamente. Per quanto riguarda le interfaccie che crei per accedere alle tabelle, queste puoi codificarle come preferisci ed interagire con il dbms sempre utilizzando il linguaggio SQL, quindi sempre semplici stringhe di testo.
Per si quanto riguarda la sicurezza si può utilizzare un database esclusivamente con il mio software, impedendone la modifica dall'esterno, anche dal dbms stesso?
Solo chi è a conoscenza dei dati di autenticazione può accedere direttamente ad un database.
Il dbms da qualche parte deve stare, e le sue informazioni sono accessibili e modificabili tramite il linguaggio SQL ovunque sia.
La domanda è un po' vaga. Se ti riferisci alle informazioni per connetterti al database (indirizzo, usarname e password...) puoi salvarle sia internamente che esternamente al software come qualsiasi dato testuale, ovviamente. Per quanto riguarda le interfaccie che crei per accedere alle tabelle, queste puoi codificarle come preferisci ed interagire con il dbms sempre utilizzando il linguaggio SQL, quindi sempre semplici stringhe di testo.
Solo chi è a conoscenza dei dati di autenticazione può accedere direttamente ad un database.
Ti ringrazio hai risposto esaustivamente alla mia domanda e mi hai rinfrescato la memoria. è vero il dbms deve essere sempre presente, effettivamente tutti gli archivi hanno il motore dietro (Per esempio alcuni siti internet che si appoggiano a MySQL.
Per quanto riguarda la domanda "vaga" mi riferivo al fatto che magari alcuni dbms permettono "il rilascio di una parte di se stessi" Per una gestione autonoma tramite il software di interfaccia. (Un po come se avessi scritto i file internamente al software tramite linguaggio di programmazione). Il fatto a questo punto mi sembra chiaro. Comunque mi hai già risposto dicendo "Il dbms da qualche parte deve stare".
Ti ringrazio sei stato gentilissimo.
Ti ringrazio hai risposto esaustivamente alla mia domanda e mi hai rinfrescato la memoria. è vero il dbms deve essere sempre presente, effettivamente tutti gli archivi hanno il motore dietro (Per esempio alcuni siti internet che si appoggiano a MySQL.
Per quanto riguarda la domanda "vaga" mi riferivo al fatto che magari alcuni dbms permettono "il rilascio di una parte di se stessi" Per una gestione autonoma tramite il software di interfaccia. (Un po come se avessi scritto i file internamente al software tramite linguaggio di programmazione). Il fatto a questo punto mi sembra chiaro. Comunque mi hai già risposto dicendo "Il dbms da qualche parte deve stare".
Ti ringrazio sei stato gentilissimo.
Ho capito. Sinceramente mi è capitato di usare sempre e solo MySQL che è un elemento a parte, completamente autonomo nella gestione dei db e quasi tutti seguono questa filosofia, credo. Inoltre è molto più semplice avere un'entità separata con la quale ti puoi interfacciare con il linguaggio SQL che, almeno in teoria, è standard e uguale per tutti dbms. In questo modo il programma che usa il database è completamente indipendente dallo stesso.
Non so se è quello che ti serve ma esistono database che vengono descritti come in-memory. Per esempio SQLite dal suo sito (http://www.sqlite.org/) è descritto così "SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine".
Non so se è quello che ti serve ma esistono database che vengono descritti come in-memory. Per esempio SQLite dal suo sito (http://www.sqlite.org/) è descritto così "SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine".
Proverò a darci un occhiata. Ringrazio tutti per le risposte.
:)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.