Dove posso trovare database di esempio per MySQL, SQL Server e Oracle?


10

Voglio sperimentare i 3 grandi sistemi di gestione del database. A questo scopo sarebbe bello avere lo stesso database (le stesse tabelle, ecc.) Per ognuno di questi.

Dove posso trovare script sql che creano database di test identici per MySQL, MSSQL e Oracle?


Puoi creare un nuovo account su dba.se usando l'OpenID che usi su SO, quindi saremo in grado di unire i due account da qui se mi fai il ping con un commento qui o su The Heap
Jack dice prova a provare topanswers.xyz

1
A parte l'eccellente risposta di Justin, Microsoft ha un set di database di esempio di SQL Server qui .
Nick Chammas,

Risposte:


12

Oracle fornisce diversi schemi di esempio , ma come per la risposta di Rolando, dovresti convertirli per gli altri database.

La mia risposta in breve è Non usare script identici .

Il problema con l'utilizzo di script il più simile possibile per ciascun database è che si utilizzerà la funzionalità di denominatore meno comune. L'uso di un database richiede un investimento in infrastruttura, installazione, supporto e sviluppo che non raggiungerà il suo pieno potenziale se i vantaggi di ciascuna piattaforma non vengono utilizzati.

Per fare davvero un confronto tra queste piattaforme, ti suggerisco di determinare quali sono i tuoi requisiti e quindi implementarli nel miglior modo possibile per ciascun database. Ciò richiederà ovviamente una conoscenza significativamente maggiore delle piattaforme, ma qualsiasi altro confronto sarebbe solo accademico.

Ecco due esempi.

Requisito: mostra tutti i giorni in un determinato intervallo di date con i dati sulle vendite per il giorno indipendentemente dal fatto che siano state effettuate o meno vendite quel giorno.
Soluzioni: in Oracle è possibile eseguire un cross join con una query gerarchica sul doppio ritorno per tutti i giorni dell'intervallo. In SQL Server è possibile utilizzare un CTE per generare i giorni. In MySQL potresti usare qualcos'altro interamente. 1

Requisito: essere in grado di eseguire una query in qualsiasi momento per recuperare i dati per qualsiasi tabella così com'era in qualsiasi momento nelle ultime quattro ore.
Soluzione: in Oracle dovresti solo assicurarti che la conservazione degli annullamenti sia garantita e impostata su almeno quattro ore. In altri database l'implementazione sarebbe notevolmente diversa. 2


Segnalibro questo. +1 !!!
RolandoMySQLDBA,

Sì, sì un milione di volte sì!
HLGEM


1

Puoi provare a risolvere gli stessi esercizi sugli stessi database usando MSSQL, MySQL, PostgreSQL sul sito SQL Exercises .

Oracle è nei piani futuri.

PS Oracle è ora disponibile.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.