Migliore risposta
Qual è la differenza tra RDBMS e SQL?
Un RDBMS è un sistema di gestione di database relazionali. È il software di database stesso, che gestisce larchiviazione, le query, laggiornamento e, beh, tutto. In particolare, un RDBMS utilizza un modello relazionale di dati, come suggerisce il nome. Se vuoi lavorare su un RDBMS, dovrai imparare il suo linguaggio di implementazione (spesso C), la teoria dei modelli relazionali e molte cose importanti sullaccesso al file system, la registrazione delle transazioni, la scalabilità, la sincronizzazione e così via.
SQL, il linguaggio di query strutturato, è un linguaggio (o una famiglia di lingue o dialetti strettamente correlati) che viene tipicamente utilizzato per interroga lRDBMS. Se vuoi lavorare con SQL, devi solo imparare SQL e forse un po di teoria dei modelli relazionali per lo sfondo.
Quindi: RDBMS è il sistema e SQL è il linguaggio utilizzato per interagire con il sistema . In linea di principio potresti avere un RDBMS che utilizza un altro linguaggio per laccesso e in linea di principio potresti usare SQL per interagire con un altro tipo di sistema di database, sebbene in pratica i due siano strettamente accoppiati.
SQLite, MySQL, MariaDB, Postgres, e altri sono tutti RDBMS e il linguaggio che utilizzerai per interagire con tutti loro è SQL. (Nota, tuttavia, che il “dialetto” di SQL non è identico, quindi mentre tutte le funzionalità CRUD di base dovrebbero essere le stesse in tutti i DB basati su SQL, ci saranno alcune differenze tra di loro. Sarebbe bello se ci fossero solo un SQL, ma in pratica cè il “dialetto” MySQL di SQL e così via.)
Risposta
SQL = Structured Query Language (inventato da IBM)
È un linguaggio progettato per accedere e gestire i database. È un esempio di un DSL (Domain Specific Language), in questo caso il dominio è Databases.
I database sono tradizionalmente disponibili in due versioni; Relational DataBase Management System (RDBMS) che erano grandi e potenti (e spesso costosi) e database Desktop / Personali che erano meno potenti (e solitamente più economici).
Ogni database personale (dBase, FoxBASE, Clipper, ecc. ) in genere avevano i propri modi proprietari per consentire allutente di interagire con loro.
RDBMS era più veloce nelladozione di SQL e così divenne noto anche agli utenti ordinari come database SQL.
Il driver principale poiché ciò avveniva con lespansione delle aziende e la creazione di nuove e più potenti applicazioni, gli sviluppatori spesso dovevano superare i problemi di accesso ai dati “bloccati” nei database proprietari .
Di conseguenza, in futuro è diventato un aspetto importante della strategia IT di molte aziende utilizzare “database SQL” per evitare rischi futuri di blocco dei dati.
Oracle ha guidato il ed erano noti per essere il primo database SQL commerciale.
Poiché i database SQL erano più facili da ottenere “buy-in” aziendale, la maggior parte dei nuovi Gli odotti iniziarono a essere denominati per riflettere questo, ad esempio Sybase / MS SQL Server.
La tendenza si estese allopen source quando Postgres fu rinominato PostgreSQL una volta adottato il supporto SQL.
Quindi tecnicamente, SQL è un linguaggio specifico del dominio, ma il termine database SQL è così diffuso per indicare un RDBMS che cè poco da guadagnare respingendo il termine.
Una nota a margine, il la parola accesso è in grassetto sopra perché quella era una delle caratteristiche chiave dellapplicazione database Access di Microsoft, la possibilità di accedere a dati bloccati da molti database desktop legacy. Credo che avessero già il marchio di un precedente progetto abbandonato.