Articles of database design

incertezza nello sviluppo di un modello di database

Sto cercando di sviluppare un modello di database per i candidati, i loro esami registrati e il risultato degli esami quando vengono presi. Questo è quello che ho fatto finora. tuttavia non sono sicuro se sono sulla strada giusta, specialmente dalla tabella degli esami alla tabella dei risultati dell’esame. quanto sarà facile scrivere correttamente un […]

I trigger MySQL non possono aggiornare le righe nella stessa tabella a cui è assegnato il trigger. Soluzione alternativa suggerita?

MySQL attualmente non supporta l’aggiornamento di righe nella stessa tabella a cui è assegnato il trigger poiché la chiamata potrebbe diventare ricorsiva. Qualcuno ha suggerimenti su una buona soluzione alternativa / alternativa? In questo momento il mio piano è quello di chiamare una procedura memorizzata che esegua la logica che volevo veramente in un trigger, […]

Seleziona (recupera) tutti i record da più schemi usando Postgres

Ho un database PostgreSQL con alcuni schemi, come di seguito: My_Database |-> Schemas |-> AccountA |-> AccountB |-> AccountC |-> AccountD |-> AccountE . . . |-> AccountZ Tutti gli schemi hanno una tabella chiamata product che ha una colonna chiamata title . Vorrei sapere se è ansible eseguire un’istruzione select per recuperare tutti i […]

Come progettare un database mysql multi-tenant

Diciamo che ho bisogno di progettare un database che ospiterà i dati per più aziende. Ora per motivi di sicurezza e amministrazione devo accertarmi che i dati per le diverse aziende siano correttamente isolati, ma non voglio nemmeno avviare 10 processi mysql per ospitare i dati di 10 società su 10 server diversi. Quali sono […]

In un clone di StackOverflow, quale relazione deve avere una tabella dei commenti su Domande e risposte?

In un’applicazione simile a StackOverflow che sto creando, sto cercando di decidere quale relazione dovrebbero avere le mie Questions , Answers e tabelle dei Comments . Potrei avere Questions e Answers entrambe rappresentate da un unico Posts tabella. Ciò consentirebbe ai Comments di avere una sola chiave esterna per i Posts . Ma se Questions […]

Il modo migliore per modellare l’indirizzo del cliente

Ogni Customer ha un indirizzo fisico e un indirizzo postale opzionale. Qual è il tuo modo preferito per modellarlo? Opzione 1. Il Customer ha una chiave esterna per l’ Address Cliente (id, phys_address_id, mail_address_id) Indirizzo (id, via, città, ecc.) Opzione 2. Il Customer ha una relazione uno a molti con Address , che contiene un […]

Perché e quando dovrei usare SPARSE COLUMN? (SQL SERVER 2008)

Dopo aver esaminato alcuni tutorial sulla nuova funzionalità SPARSE COLUMN di SQL SERVER 2008, ho rilevato che non occupa spazio se il valore della colonna è 0 o null ma quando è presente un valore, richiede 4 volte lo spazio come normale (non sparse) tiene la colonna. Se la mia comprensione è corretta, allora perché […]

In termini di database, è “Normalizza per correttezza, denormalizzare per le prestazioni” un giusto mantra?

La normalizzazione porta a molte caratteristiche essenziali e desiderabili, incluso il piacere estetico. Inoltre è anche teoricamente “corretto”. In questo contesto, la denormalizzazione viene applicata come compromesso, una correzione per raggiungere le prestazioni. C’è qualche ragione diversa dalle prestazioni che un database possa essere denormalizzato?

Perché utilizzare più colonne come chiavi primarie (chiave primaria composta)

Questo esempio è tratto da w3schools . CREATE TABLE Persons ( P_Id int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255), CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName) ) La mia comprensione è che entrambe le colonne insieme ( P_Id e LastName ) rappresentano una chiave primaria per la tabella Persons . È […]

Alternative a Entity-Attribute-Value (EAV)?

Il nostro database è progettato sulla base del modello EAV (Entity-Attribute-Value). Coloro che hanno lavorato con i modelli EAV conoscono tutta la schifezza che viene fornita con lo scopo di flessibilità. Ho chiesto al mio cliente i motivi per cui l’uso del modello EAV (flessibilità) e la loro risposta è stata: le loro quadro cambiano […]