LA CAMPANA

C'è chi ha letto questa notizia prima di te.
Iscriviti per ricevere gli ultimi articoli.
E-mail
Nome
Cognome
Come vuoi leggere The Bell
Niente spam

Come creo un database?




Il database è una delle opzioni più convenienti per archiviare e lavorare con i dati. Oggi esistono molte shell già pronte per creare il proprio database unico, il che semplifica il lavoro di molte aziende. Tali programmi hanno interfaccia user-friendly e un'ampia selezione di tipi di dati. Di seguito vedremo come creare un database nei programmi più popolari.

Come creare database sql

Prima di procedere con la creazione del database stesso, è meglio creare il suo modello. Cos'è il modello DB? Questa è una connessione logica dettagliata dei dati, un insieme di tabelle in cui sono registrati il \u200b\u200bsuo nome e ciò da cui è caratterizzato. Ad esempio, la tabella "Clienti" avrà campi: nome cliente, ID cliente, indirizzo cliente, informazioni di contatto. Allo stesso modo, vale la pena ripensare e descrivere in tabelle tutte le aree dati con cui lavorerà il database (clienti, intermediari, merci, ecc.). Dopo che tutti i tavoli sono pronti, devono essere uniti. Esistono diversi tipi principali di collegamenti:

  • uno a uno,
  • uno a molti,
  • molti a molti.

Ad esempio, un cliente può acquistare molti prodotti, quindi la relazione tra le tabelle Clienti e Prodotti dovrebbe essere uno-a-molti. Quindi, per analogia, colleghiamo quelle tabelle che sono logicamente correlate tra loro. Il modello del database può essere disegnato semplicemente a mano su carta. Puoi anche usare per questo programmi speciali (ad esempio Rwin, BpWin).

Procedura:

  1. Installa Visual Studio sul tuo computer. Vale la pena installare il kit esteso, poiché lo standard sql non è incluso.
  2. Apri Visual Studio, seleziona la scheda "Strumenti" → "Connetti al database".
  3. Nella finestra che appare, seleziona il tipo di database " Microsoft Sql File database del server "→" Continua ".
  4. Nella finestra che appare, seleziona la posizione in cui memorizzare il database sul computer. Fare clic su "Ok". Successivamente, il file del database creato apparirà nell'elenco dei file sul lato destro dello schermo.
  5. Fare doppio clic sul file del database. Nell'elenco che si apre, fare clic con il tasto destro su "Tabelle" → "Nuovo". Viene visualizzato un campo tabella vuoto.
  6. Riempiamo la tabella. Le tabelle vengono compilate secondo il modello creato in precedenza. Infatti, trasferiamo il modello a sql.
    Per creare nuova tabella ripetere il passaggio 5. Uno dei campi della tabella deve essere impostato come chiave. Per fare ciò, selezionare il campo richiesto (molto spesso i campi chiave sono campi contenenti id) e fare clic sul segno della chiave sulla barra degli strumenti.
  7. In ogni riga è necessario selezionare tipo di dati... Il tipo di dati determina in quale forma un oggetto può memorizzare le informazioni in un determinato campo. Una volta stabilito un determinato tipo di dati, non è possibile immettere altri tipi di dati.
    Se la nostra stringa contiene un valore di testo, questi possono essere dei tipi CHAR (M), VARCHAR (M), TINYBLOB, TINYTEXT, BLOB, TEXT, MEDIUMBLOB, MEDIUMTEXT, LONGBLOB, LONGTEXT - a seconda della quantità stimata di memoria che la stringa memorizzerà.
    Se il tipo di dati è un numero, allora BOOLEAN, INTEGER, DECIMAL, FLOAT, REAL, DOUBLE, PRECISION andrà bene. Se memorizzi la stringa saranno i dati su ora e data, quindi useremo DATE, TIME, TIMESTAMP, DATETIME.
    • I dati binari possono essere dei tipi "Binary", "image", "varbinary".
    • Altri tipi di dati: "cursore", "hierarchyid", "sql_variant", "tabella", "timestamp", "uniqueidentifier", "xml", "tipi spaziali".

Dopo aver compilato tutte le tabelle, il database verrà creato e portato a una visualizzazione di lavoro.

Come creare un database 1c

Il nuovo database viene creato abbastanza spesso nelle imprese. Questo non richiede conoscenze speciali. Un nuovo database viene creato in 10 minuti. Se stai usando 1c, non è necessario installare nulla in più in questa shell per crearlo. Prima di creare nuova base i dati devono essere fatti backup a disposizione base di informazioni... Bene, iniziamo.

Ogni nuova installazione CMS Joomla richiede la creazione di un nuovo database. Questo database memorizzerà dati come articoli / materiali, menu, categorie e utenti. Questi dati sono necessari per gestire il tuo Joomla!

Per installare Joomla, devi avere un database funzionante, un utente del database, una password utente del database e privilegi appropriati per un utente del database.

Questo articolo discuterà il tipo più comune di database utilizzato durante l'installazione di Joomla, ovvero il database di base dati MySQL... Vedremo due opzioni per creare un database per Joomla. Il primo modo sarà creare un database su un server locale e il secondo - creare un database sull'hosting, con l'accento sull'uso di DirectAdmin - pannello di controllo dell'hosting. Ma altri pannelli di controllo di hosting dovrebbero avere passaggi di creazione del database simili.

Crea database MySQL sul server locale

Per creare un database su un server locale, è necessario prima installarlo. Pertanto, scarichiamo server locale - Denwer [Scarica] e installalo. Istruzioni per l'installazione di Denwer .

Dopo aver installato con successo il server locale, puoi iniziare a creare il database per l'installazione di Joomla! Per accedere all'interfaccia di gestione del database, è necessario avviare il server Denwer locale (se non in esecuzione) e inserire nella barra degli indirizzi del browser: http: // localhost / tools / phpmyadmin... Nella finestra che si apre, vedrai l'interfaccia web phpMyAdmin. Ora puoi iniziare a creare direttamente il database.

Il database e l'utente per esso sono stati creati, ora puoi iniziare a installare Joomla sul tuo server locale.

Creazione di un database MySQL su hosting

Come accennato in precedenza, la creazione di un database di hosting verrà effettuata utilizzando l'esempio del pannello di controllo DirectAdmin. Ma tutte le fasi della creazione saranno simili a qualsiasi pannello di controllo di hosting.

Per creare un database su un hosting, è necessario accedere al pannello di controllo dell'hosting. Devi sapere come entrare tu stesso nel pannello di controllo dell'hosting; al momento della registrazione dell'hosting, dovresti aver ricevuto tutte le informazioni sul suo utilizzo. In caso contrario, puoi chiarire qualsiasi informazione contattando supporto tecnico propria.

Una volta entrati nel pannello di controllo dell'hosting, puoi iniziare direttamente a creare il database.


Ora puoi installa Joomla 2.5 (o installa Joomla 3.1) direttamente sull'hosting e ad una certa fase dell'installazione, dovrai inserire i dati che dovevano essere registrati (nome database, username, password utente e host).

NEL file system il lavoro simultaneo di più utenti associato alla modifica dei dati nel file non è stato implementato o è stato rallentato. Queste carenze hanno portato allo sviluppo di nuovi approcci alla gestione delle informazioni. Questo approccio è stato implementato nell'ambito del nuovo software ed è chiamato un sistema di gestione del database (DBMS) e gli archivi di informazioni stessi sono stati chiamati database e banche dati. Una delle prime fasi nella creazione di un database sono stati i computer di grandi dimensioni. I primi DBMS sono stati messi in funzione di IBM alla fine degli anni '60. Questo DBMS è stato associato all'organizzazione di un database su mainframe (360) e EU (Unified System). Qui è dove sono stati archiviati i database memoria esterna computer centrale. Le attività dell'utente dovevano eseguire i dati in modalità batch. Potente sistemi operativi ha fornito molte attività in parallelo. Questi sistemi potrebbero essere classificati come un sistema di accesso distribuito perché il database era centralizzato. Era archiviato su una memoria esterna installata di uno dei computer centrali e l'accesso era supportato da molti utenti e attività.

Successivamente, un grande contributo alla teoria del database fu dato dal matematico americano Edward Codd, che fu l'ideatore della teoria del database relazionale e allo stesso tempo apparvero linguaggi di alto livello.

La seconda fase è l'era computer personale... A quel tempo, apparvero programmi chiamati DBMS e consentirono di memorizzare una quantità significativa di informazioni. Avevano un'interfaccia user-friendly per riempire il database. Hanno reso possibile automatizzare più funzioni che in precedenza venivano eseguite manualmente. I primi database sui computer furono di breve durata; non hanno tenuto conto del rapporto tra oggetti reali e della domanda di programmi convenienti DBMS. Ciò ha portato alla creazione di DBMS desktop. Allo stesso tempo, ogni sviluppatore ha sviluppato il proprio DBMS utilizzando lingue standard programmazione e quindi ogni volta che era necessario trasferire i dati digitati a un DBMS più recente. Questo era uno dei principali svantaggi di quest'epoca. I rappresentanti più brillanti di questa era erano: dbase, FoxPro, clipper, Paradox.

La terza fase della distribuzione del database. In questa fase è apparso un gran numero di reti locali, sempre più informazioni vengono trasmesse tra i computer e sorge il problema di riconciliare i dati memorizzati ed elaborati in luoghi diversi, ma che sono logicamente collegati tra loro. La soluzione a questo problema porta alla nascita di un database distribuito che conserva il vantaggio di tutti i DBMS desktop, ma allo stesso tempo consente di organizzare l'elaborazione parallela delle informazioni. Fu in questa fase che iniziò il lavoro relativo al concetto di database orientato agli oggetti (SQL). Per manipolare i dati in questa fase, sono stati utilizzati SQL e tecnologie per lo scambio di dati tra DBMS, a cui è possibile attribuire ODBC (open database connectivity). Fu in questa fase che furono introdotti MsAccess, MsSQL, ORCL, ecc.

La quarta fase sono le prospettive per lo sviluppo del DBMS. È caratterizzato dalla nuova tecnologia di accesso ai dati Intronet. Ciò elimina la necessità di utilizzare un client speciale software... Per lavorare con un database remoto, vengono utilizzati i browser Internet Explorer standard, ecc. In questo caso, il codice incorporato nella pagina html caricata dagli utenti viene scritto in formato lingue JavaJavaScript esegue il debug di tutte le azioni dell'utente e le traduce in query SQL di basso livello. Ecco come viene eseguito il programma client. La comodità di questo approccio ha reso possibile utilizzarlo non solo in database remoti, ma anche in reti locali imprese.

Concetti di base e definizione di un database

Il termine banca e database viene spesso menzionato e differiscono. Il database è una raccolta denominata di dati, stati riflessi degli oggetti e le loro relazioni nell'area tematica considerata. Un'area tematica è intesa come uno o più oggetti di gestione delle informazioni di cui sono modellati utilizzando un database e utilizzati per risolvere vari compiti funzionali. Un sistema di gestione di database è una raccolta di linguaggi e strumenti software progettati per creare un'introduzione e condividere un database da molti utenti. Il DBMS deve garantire l'indipendenza dei dati. Quasi lo stesso DBMS può essere utilizzato per introdurre file diversi, che vengono utilizzati per risolvere varie attività di controllo non correlate. Tutte le funzioni del DBMS possono essere combinate nei seguenti gruppi:

1) Gestione dei dati. I compiti della gestione dei dati sono la preparazione e il controllo dei dati, l'inserimento dei dati nel database, la garanzia dell'integrità e della segretezza dei dati.

2) Accesso ai dati. Ricerche, selezione dei dati, trasformazione dei dati in un modulo conveniente per un ulteriore utilizzo.

3) Organizzazione e comunicazione con gli utenti, dialogo. Emissione di questi messaggi su errori nel lavoro sul database, ecc. Per elaborare le query del database, sviluppare programmi presentati come programmi applicativi con cui l'utente lavora con un database chiamato applicazione. In linea di principio, molti possono lavorare con un database. varie applicazioni... È il DBMS che garantisce il lavoro con un unico database in modo tale che ciascuno di essi venga eseguito correttamente e tenga conto di tutte le modifiche nell'applicazione.

Fasi di progettazione del database

La questione della progettazione di database è evidenziata come un'area di lavoro separata nello sviluppo di sistemi informativi; la progettazione di database è un processo decisionale iterativo in più fasi nel processo di analisi modello informativo argomento. Qui devono essere presi in considerazione i requisiti di dati da parte della programmazione dell'applicazione e delle strutture dati utente, logiche e funzionali, la scelta di software e hardware. Le fasi della progettazione del database sono associate all'organizzazione a più livelli dei dati. Il processo dati multilivello è il seguente: esterno, infologico, logico, datalogical, interno. Esistono altri livelli di presentazione dei dati, in cui vengono utilizzati 3 livelli: esterno, concettuale, interno.

Il livello esterno è necessario per implementare qualsiasi richiesta o programmazione dell'applicazione. A volte anche il livello esterno è considerato infologico, ad es. allo stesso tempo, tutta la macchina esterna supporto informativo, cioè moduli per la documentazione e la presentazione dei dati, nonché l'ambiente esterno in cui sarà la funzione di database. Il livello esterno è una descrizione dei messaggi e dei dati di input e output che è consigliabile archiviare in un database. La descrizione dello strato esterno non esclude la presenza di elementi di duplicazione, ridondanza e incoerenza dei dati. Per eliminare queste contraddizioni, è stato applicato il design infologico. Il modello infologico può essere visto come un mezzo per documentare il modulo di presentazione esigenze di informazione, che garantisce una comunicazione coerente tra l'utente e lo sviluppatore del sistema. Tutte le rappresentazioni esterne sono integrate a livello informativo, dove il livello infologico è un modello infologico dell'area tematica dal quale sono escluse la ridondanza dei dati e la visualizzazione delle caratteristiche informative degli oggetti di controllo, es. una rappresentazione infologica dei dati, mirata alla persona che progetta o utilizza il database.

A questo livello, modello concettuale dati che soddisfano le caratteristiche e le limitazioni del DBMS selezionato. Questo modello è rivolto ai programmatori. Il modello a livello logico che supporta la creazione di istanze delle strutture DBMS è chiamato datalogical. I modelli infologici e datalogici sono interdipendenti. Un modello infologico può essere facilmente trasformato in uno datalogico. Lo strato interno si occupa della posizione fisica dei dati. La quantità di memoria e il tempo di risposta del sistema dipendono dai parametri del modello fisico. I parametri fisici del database possono essere modificati per migliorare l'efficienza del sistema funzionale. La variazione dei parametri fisici non è predeterminata dalla necessità di modificare il modello infologico e datalogico. Il diagramma delle relazioni di livello include una descrizione dei dati.

Modello di rete. Se c'è più di una connessione in una relazione tra i dati, questa relazione viene descritta come struttura di rete... Un database di rete è costituito da un insieme e molti collegamenti tra di loro.

Il modello relazionale, in contrasto con il modello gerarchico e modelli di rete non ha difetti. Affinché il database funzioni in modo più efficiente, proponiamo un approccio relazionale. La creazione del modello relazionale è associata al nome di Edward Codd. I primi lavori in quest'area sono apparsi negli anni '70 e per molto tempo questo approccio è stato un comodo apparato formale per l'analisi di un database.

L'approccio relazionale ha le sue origini nella teoria degli insiemi della matematica. Nel modello relazionale, gli oggetti e le loro relazioni sono rappresentati mediante tabelle. Consideriamo anche le relazioni come oggetti. Ogni tavolo è un oggetto. Nella terminologia modelli relazionali le tabelle sono chiamate relazione, ogni colonna in una tabella è chiamata attributo di valore in una colonna allocata da un dominio. Un dominio è un insieme di valori che ogni attributo può assumere. Le righe nella tabella sono chiamate tuple.

2017-06-21


Crea un database MySQL

Ciao caro visitatore!

Prima di procedere con l'argomento successivo della creazione di un sito, voglio scusarmi per il ritardo nella scrittura degli articoli. Ma, come si suol dire, il motivo è valido, poiché era connesso al lavoro su altri importanti progetti. Spero che in futuro le questioni urgenti mi consentano di considerare tutte le principali questioni dichiarate sullo sviluppo del sito in modo regolare, con una frequenza di 1-2 articoli a settimana.

Questo articolo inizia la parte successiva della raccolta "Crea un sito web da zero con le tue mani", che sarà principalmente finalizzata allo sviluppo e all'ottimizzazione del sito, riempiendolo con i contenuti e le funzionalità necessarie.

E per poter sviluppare appieno il sito in futuro, non potremo fare a meno di considerare una questione così importante come lavorare con il database MySQL (in quanto segue, l'abbreviazione "DB" sarà usata anche per denotare il database MySQL).

In questo articolo creeremo un database su local web server Denwer e sull'hosting che ospita il nostro sito.

  • Perché hai bisogno di un database
  • Cos'è un database MySQL
  • Creare un database sul server web locale Denwer
  • Creiamo un database sull'hosting

Perché hai bisogno di un database

Negli articoli precedenti, ci siamo impegnati a creare la base del sito, che comprende le seguenti fasi principali:

  • sviluppo del layout di progettazione;
  • formazione di pagine web utilizzando HTML e CSS;
  • creando un sito web dinamico con utilizzando PHP;
  • adattamento del sito per dispositivi mobili utilizzo di media query;
  • posizionamento di siti su Internet;

Allo stesso tempo, in tutte queste fasi, non è stato richiesto l'utilizzo di alcun database.

E ora, come accennato in precedenza, saremo impegnati nello sviluppo del sito, che includerà domande come:

  • contenuto di riempimento;
  • lavorare con le forme;
  • contabilità delle informazioni sui clienti;
  • registrazione delle informazioni sugli ordini;
  • registrazione delle informazioni sulle commissioni ricevute;
  • contabilizzazione delle informazioni relative alla posta elettronica inviata e ricevuta;
  • ottimizzazione;

Come puoi vedere, anche dal nome dei punti sopra, dobbiamo salvare ed elaborare le informazioni necessarie da qualche parte.

Ma, forse, potrebbe sorgere la domanda, perché abbiamo bisogno di un database? Dopo tutto, puoi salvare le informazioni in file normali?

Naturalmente, puoi risolvere tutti questi problemi senza un database, utilizzando il contenuto dei file. Ma, in questo caso, le operazioni di estrazione e smistamento saranno molto più laboriose. E la velocità per ottenere le informazioni dal database è molto più veloce che dai file. E se si aggiunge a questo la quantità di codice che sarà necessaria per elaborare i dati che si trovano nei file, la domanda se utilizzare il database scompare da sola.

Cos'è un database MySQL

È stata scritta molta letteratura di riferimento diversa sul software server MySQL, che può essere trovata su risorse Internet specializzate. Pertanto, se necessario, non sarà difficile conoscere più in dettaglio le domande teoriche su questo sistema informativo... Qui ci concentreremo su applicazione pratica di questo strumento per il nostro sito.

E per questo, a mio parere, è sufficiente capire solo che il database MySQL, in effetti, è un insieme di tabelle ordinarie con cui tutti abbiamo dovuto imbatterci prima o poi. E quindi, per chi lo conosce per la prima volta, non fatevi intimidire da un termine come "database".

Queste tabelle possono avere, a seconda delle dimensioni, un numero diverso di righe (record) e colonne (campi). La prima colonna di solito definisce un identificatore univoco per il record (comunemente indicato come "id") e i campi rimanenti vengono assegnati in base al numero di campi.

Pertanto, dopo aver selezionato una riga con l'aiuto di query speciali del linguaggio SQL, possiamo eseguire tutte le azioni necessarie con esso, come scrivere dati su di essa, recuperarli, ordinarli o aggiornarli.

Per spiegarlo chiaramente, fornisco di seguito uno screenshot di un frammento di una tabella di uno dei miei siti esistenti, che mantiene un registro costante di tutte le visite, inclusi vari servizi e robot di ricerca.

Tale strumento applicativo consente di raccogliere informazioni su tutte le visite al sito in un determinato periodo e, se necessario, analizzare questi dati. Che è particolarmente utile per le situazioni di emergenza. Se qualcuno è interessato a questo, fammelo sapere, in uno dei seguenti articoli posso pubblicare il codice corrispondente e dirti come funziona.


Qui puoi vedere che la tabella è composta da 6 colonne e un certo numero di righe, a seconda della dimensione di un dato periodo (in questo caso, la tabella ha 35539 voci recenti). Ogni riga contiene dati per data, ora, numero di visite giornaliere, indirizzo IP dell'utente e nome host.

Allo stesso tempo, nella prima colonna puoi vedere l'id univoco per ogni riga della tabella, che consente loro di essere identificati da questo valore.

Ad esempio, è possibile eseguire una query SQL che itererà su tutti i valori id in ordine e quindi recupererà i dati dall'intera tabella. Oppure, effettuando una richiesta per uno specifico indirizzo IP, ordina e analizza le visite che ne sono state fatte.

In generale, avendo tutti i dati nella tabella MySQL, è possibile recuperare le informazioni necessarie a seconda dell'attività richiesta.

Allo stesso modo, utilizzando le query, puoi sia scrivere che aggiornare il contenuto delle tabelle.

Come puoi vedere, non c'è niente di complicato qui. La cosa principale quando si lavora con MySQL è sapere come scrivere correttamente le query. Ma, anche in questo, non dovrebbero esserci grosse difficoltà, che potranno essere verificate quando in futuro registreremo ed estrarremo i dati necessari all'aggiunta delle funzionalità del sito.

E ora, per poter formare tabelle MySQL e lavorare con esse, creeremo un database nel server web Denwer locale e sull'hosting in cui si trova il sito.

Creare un database sul server web locale Denwer

Per lavorare con MySQL, esiste una speciale applicazione phpMyAdmin, che è un'interfaccia web per l'amministrazione di un sistema di gestione di database (DBMS). Questo strumento ti consente di amministrare il tuo server MySQL tramite un browser, inclusa la creazione di tabelle e la visualizzazione del loro contenuto.

Quindi usando applicazione specificata, creeremo un database MySQL.

Per fare ciò, all'inizio, digitando nella barra degli indirizzi del browser "http: // localhost / Tools / phpMyAdmin /" apri la home page di phpMyAdmin.


Va notato che questa interfaccia può essere aperta in un altro modo: tramite il collegamento a home page Denver, come mostrato nello screenshot seguente, dopo aver digitato "http: // localhost / denwer /" nel browser.


E poi, andando nella sezione appropriata, creeremo un database. Per fare questo basta inserire il suo nome (chiamiamolo, ad esempio, "avtobezugona") e la codifica richiesta, nel nostro caso, sarà "ult8_general_ci"


Questo è tutto, è stato creato il nostro database denominato "avtobezugona", come testimoniano i campi corrispondenti nell'elenco dei database nella sezione "Database" e nel menu principale di phpMyAdmin.


Creiamo un database sull'hosting

Per creare un database devi prima entrare nel pannello di controllo dell'hosting, come mostrato nell'articolo Acquistare l'hosting per un sito web.


La corretta creazione del database è confermata dal corrispondente messaggio informativo con la visualizzazione dei dati necessari per la connessione. Dovrebbero assolutamente essere annotati da qualche parte, poiché in futuro saranno necessari per il lavoro.

Per il fatto che questa base destinato a un sito live, per ovvi motivi, alcuni campi negli screenshot sono resi illeggibili.


Ora puoi andare direttamente all'editor PhpMyAdmin e impostare la codifica del database richiesta.


Ma per entrare nell'applicazione PhpMyAdmin è necessario inserire negli appositi campi i dati che sono stati determinati in fase di creazione del database e confermati nella fase finale (Fig.7).

Di conseguenza, abbiamo ottenuto il risultato richiesto, creato un database a Denver e ospitato. E ora siamo pronti per creare tabelle al loro interno e lavorare con il loro contenuto nei prossimi articoli.

  • Satya successivo:

Ciò richiederà sistema installato gestione database (DBMS) DB2. Useremo un dialetto del linguaggio SQL utilizzato in questo particolare DBMS.

Il primo comando che useremo per creare un database è il comando CREATE DATABASE. La sua sintassi è la seguente:

CREATE TABLE TABLE_NAME (tipo di dati first_column_name, ..., tipo di dati last_column_name, chiave primaria, vincoli (facoltativo))

Poiché il nostro database modella una rete di farmacie, contiene entità come "Farmacia" (la tabella Farmacia nel nostro esempio di creazione di un database), "Farmaco" (la tabella Preparazione nel nostro esempio di creazione di un database), "Disponibilità (farmaci in farmacia) "(la tabella Disponibilità nel nostro esempio di creazione di un database)," Cliente "(la tabella Cliente nel nostro esempio di creazione di un database) e altri, che analizzeremo in dettaglio qui.

Più di un articolo può essere dedicato allo sviluppo del modello "entità-relazione", ma se siamo principalmente interessati ai comandi SQL per la creazione di un database e di tabelle in esso, saremo d'accordo nel ritenere che le relazioni tra le entità siano già chiare per noi. La figura seguente mostra una rappresentazione del nostro modello di database con attributi di entità (tabelle) e relazioni tra tabelle.

Per ingrandire l'immagine, puoi cliccarci sopra con il tasto sinistro del mouse.

Come accennato, l'esempio di creazione del database discusso qui utilizzava una variante del linguaggio SQL utilizzato nel sistema di gestione del database DB2 (DBMS). Non fa distinzione tra maiuscole e minuscole, ovvero non importa se i comandi e le singole parole sono digitati in lettere minuscole o maiuscole. Per illustrare questa caratteristica, i comandi vengono dati senza un sistema speciale, digitati in lettere maiuscole e minuscole.

Ora iniziamo a creare squadre. Il nostro primo comando SQL crea il database PHARMNETWORK:

Codice SQL

CREA RETE FARMACEUTICA DATABASE

Descrizione della tabella FARMACIA:

Scriviamo un comando che crea la tabella FARMACIA (Farmacia), i valori della chiave primaria PH_ID vengono generati automaticamente da 1 con passo 1, viene verificato che i valori dell'attributo Indirizzo in questa tabella siano univoci:

Codice SQL

CREATE TABLE PHARMACY (PH_ID smallint NON NULL GENERATO SEMPRE COME IDENTITÀ (INIZIA CON 1, INCREMENTA DI 1), Indirizzo varchar (40) NOT NULL, CHIAVE PRIMARIA (PH_ID), CONSTRAINT PH_UNIQ UNIQUE (Indirizzo))

Si noti che la generazione automatica di una chiave primaria incrementale è fornita dagli strumenti utilizzati nel dialetto SQL per DB2:

Codice SQL

PH_ID smallint NON NULL GENERATO SEMPRE COME IDENTITÀ (INIZIA CON 1, INCREMENTA DI 1)

I mezzi per generare automaticamente una chiave primaria incrementale (chiamata abbreviazione di autoincrement) variano tra i diversi dialetti SQL. Ad esempio, MySQL utilizza parola chiave AUTO_INCREMENT e la parte corrispondente della query di creazione della tabella ha questo aspetto:

Codice SQL

PH_ID int (4) NOT NULL AUTO_INCREMENT

NEL server SQL il meccanismo di autointegro è previsto come segue:

Codice SQL

La notazione (1, 1) qui significa che i valori della chiave primaria devono essere creati a partire da 1 con un incremento di 1. Quindi, ricorda che a seconda del DBMS e del dialetto SQL, i meccanismi di autoincremento sono diversi, e di seguito, per brevità, forniremo le query di creazione tabelle secondo la sintassi DB2.

Descrizione della tabella GRUPPO (Gruppo di farmaci):

Scriviamo un comando che crea la tabella Gruppo (Gruppo di farmaci), i valori della chiave primaria GR_ID vengono generati automaticamente da 1 con passo 1, viene verificata l'unicità del nome del gruppo (per questo viene utilizzata la parola chiave CONSTRAINT):

Codice SQL

CREATE TABLE GROUP (GR_ID smallint NOT NULL GENERATED SEMPRE COME IDENTITY (START WITH 1, INCREMENT BY 1), Name varchar (40) NOT NULL, PRIMARY KEY (GR_ID), CONSTRAINT GR_UNIQ UNIQUE (Name))

Descrizione della tabella PREPARAZIONE:

Il comando che crea la tabella PREPARATION, i valori della chiave primaria PR_ID vengono generati automaticamente da 1 con passo 1, si determina che i valori della chiave esterna GR_ID (Drug group) non possono essere accettati valore nullo, viene definito un controllo per l'unicità dei valori dell'attributo Name:

Codice SQL

CREATE TABLE PREPARATION (PR_ID smallint NOT NULL GENERATED SEMPRE COME IDENTITÀ (START WITH 1, INCREMENT BY 1), Name varchar (40) NOT NULL, GR_ID int NOT NULL, PRIMARY KEY (PR_ID), vincolo PR_UNIQ UNIQUE (Name))

Successivamente, dobbiamo occuparci dei vincoli di integrità. È molto comodo farlo usando il comando alter table. Questo comando viene studiato nella lezione SQL ALTER TABLE - modifica una tabella di database.

Ora è il momento di creare la tabella DISPONIBILITÀ. La sua descrizione:

Scriviamo un comando che crea la tabella DISPONIBILITÀ. Vengono determinate le date di inizio (non può essere NULL) e di fine (predefinito NULL).

Codice SQL

CREA TABELLA DISPONIBILITÀ (A_ID smallint NON NULL GENERATO SEMPRE COME IDENTITÀ (INIZIA CON 1, INCREMENTO DI 1), PH_ID INT NOT NULL, PR_ID INT NOT NULL, DateStart varchar (20) NOT NULL, DateEnd varchar (20) DEFAULT NULL, QUANTITY INT NOT NULL, MART varchar (3) DEFAULT NULL, PRIMARY KEY (A_ID), CONSTRAINT AVA_UNIQ UNIQUE (PH_ID, PR_ID))

Crea la tabella DEFICIT (Drug Deficit at the Pharmacy, ovvero una richiesta non soddisfatta). La sua descrizione:

Scriviamo un comando che crea la tabella DEFICIT:

Codice SQL

CREATE TABLE DEFICIT (D_ID smallint NOT NULL GENERATED SEMPRE COME IDENTITÀ (START WITH 1, INCREMENT BY 1), PH_ID INT NOT NULL, PR_ID INT NOT NULL, Solution varchar (40) NOT NULL, DateStart varchar (20) NOT NULL, DateEnd varchar (20) DEFAULT NULL)

Lasciato un po '. Siamo già arrivati \u200b\u200bal comando che crea la tabella Employee. La sua descrizione:

Scriviamo un comando che crea la tabella Employee, con una chiave primaria generata secondo le stesse regole delle chiavi primarie delle tabelle precedenti in cui esistono. Con la chiave esterna PH_ID, il Dipendente è associato a FARMACIA:

Codice SQL

CREATE TABLE EMPLOYEE (E_ID smallint NOT NULL GENERATED SEMPRE COME IDENTITÀ (START WITH 1, INCREMENT BY 1), F_Name varchar (40) NOT NULL, L_Name varchar (40) NOT NULL, POST varchar (40) INT NULL, PH_ID NOT NULL , CHIAVE PRINCIPALE (E_ID))

La coda ha raggiunto la creazione della tabella CLIENT (Client). La sua descrizione:

Scriviamo un comando che crea la tabella CLIENT (Client), in relazione alla chiave primaria di cui è vera la descrizione precedente. La particolarità di questa tabella è che i suoi attributi F_Name e L_Name sono NULL per impostazione predefinita. Ciò è dovuto al fatto che i clienti possono essere sia registrati che non registrati. Per quest'ultimo, i valori del nome e del cognome saranno semplicemente indefiniti (ovvero NULL):

Codice SQL

CREATE TABLE CLIENT (C_ID smallint NOT NULL GENERATED SEMPRE COME IDENTITY (START WITH 1, INCREMENT BY 1), FName varchar (40) DEFAULT NULL, LName varchar (40) DEFAULT NULL, DateReg varchar (20), PRIMARY KEY (C_ID))

La penultima tabella nel nostro database è la tabella BASKET. La sua descrizione:

Scriviamo un comando che crea una tabella CARRELLO (Carrello), anch'essa con chiave primaria univoca ed incrementale e collegata con le chiavi esterne C_ID ed E_ID rispettivamente con il Cliente e il Dipendente:

Codice SQL

CREATE TABLE BASKET (BS_ID smallint NON NULL GENERATO SEMPRE COME IDENTITÀ (INIZIA CON 1, INCREMENTA DI 1), C_ID INT NOT NULL, E_ID INT NOT NULL, PRIMARY KEY (BS_ID))

Infine, l'ultima tabella nel nostro database è la tabella ACQUISTI. La sua descrizione:

Nome del campo Tipo di dati Descrizione
OFFERTAsmallintNumero di identificazione dell'acquisto
PH_IDsmallintID farmacia
PR_IDsmallintNumero di identificazione del farmaco
BS_IDvarchar (40)Numero ID del carrello
Prezzovarchar (20)Prezzo
Datavarchar (20)Data

Scriviamo un comando che crea una tabella ACQUISTI, anch'essa con chiave primaria univoca ed incrementale e associata alle chiavi esterne BS_ID, PH_ID, PR_ID rispettivamente con Carrello, Farmacia e Farmaco:

Codice SQL

CREATE TABLE BUYING (B_ID smallint NOT NULL GENERATED SEMPRE COME IDENTITÀ (INIZIA CON 1, INCREMENTO DI 1), BS_ID INT NOT NULL, PH_ID INT NOT NULL, PR_ID INT NOT NULL, DateB varchar (20) NOT NULL, Price Double NOT NULL, CHIAVE PRIMARIA (B_ID))

E già alla fine dell'argomento della creazione di un database, la divagazione promessa sul rispetto dei vincoli di integrità, quando la decisione è più complicata della scrittura di un comando. Nel nostro esempio, deve essere soddisfatta la seguente condizione: quando si acquista un'unità di un farmaco, il valore della quantità di questo farmaco nella tabella DISPONIBILITÀ deve diminuire di conseguenza. In generale, per tali operazioni in linguaggio SQL ci sono strumenti speciali chiamati trigger. Ma i trigger sono una cosa capricciosa: in pratica, potrebbero non funzionare o potrebbero non funzionare come previsto. Pertanto, gli sviluppatori, quando possibile, cercano strumenti software per risolvere tali problemi, un esempio dei quali è menzionato in questo paragrafo.

In effetti, c'è strumento software risolvere il problema di cui sopra di ridurre il valore della quantità del farmaco Vale a dire: nella condizione di aggiungere il farmaco corrispondente alla tabella ACQUISTI, viene scritta una funzione nel linguaggio di programmazione in cui viene eseguita l'applicazione, con una query con la parola chiave UPDATE per sostituire il valore della quantità di questo farmaco con uno in meno nella stessa farmacia. Sia la tabella BUYING che la tabella AVAILABILITY hanno una chiave esterna PH_ID, l'identificativo di una farmacia specifica.

Questo interrompe l'argomento multiforme della creazione di database ...

Database relazionali e linguaggio SQL

LA CAMPANA

C'è chi ha letto questa notizia prima di te.
Iscriviti per ricevere gli ultimi articoli.
E-mail
Nome
Cognome
Come vuoi leggere The Bell
Niente spam