Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 7095|Risposta: 0

Transazioni e stored procedure che stanno alla base del database

[Copiato link]
Pubblicato su 15/03/2019 22:45:21 | | | |


prefazione


L'ultima volta volevo organizzare tutto il contenuto base di SQL, ma ho scoperto che l'orologio stava girando prima che me ne accorgessi. Questo articolo continua qui sotto.


Testo


Prima di tutto, creiamo le tabelle di cui abbiamo bisogno



Eseguiamo prima un'istruzione SQL


Questo codice sottrae il saldo di 0001 per 1000 e il saldo di 0002 per 1000. Ma abbiamo aggiunto vincoli quando abbiamo costruito il tavolo, e il saldo deve essere maggiore o uguale a 10.

I risultati sono i seguenti:
                  

Quindi questo errore di esecuzione del codice: "L'istruzione UPDATE è in conflitto con il vincolo CHECK "CH_balance". Il conflitto si verifica nel database "DemoDb" con la tabella "dbo. Banca", colonna 'saldo'。” 。 Se una delle istruzioni è un errore, allora se l'altra affermazione è stata eseguita con successo.

I risultati delle query sono i seguenti:
                     

Vedremo che un'altra istruzione SQL non presenta errori, ma comunque non effettua il commit con successo. Ecco cosa vi riveleremo.

#Transazioni

Cos'è la Transazione?
A rigor di termini, se un'operazione soddisfa atomicità, persistenza, isolamento e coerenza, allora l'operazione si chiama transazione.
Invia automaticamente le transazioni: in SQL Server. Per impostazione predefinita, ogni istruzione SQL è una transazione.
Mostra transazioni: Ogni transazione inizia esplicitamente con un'istruzione BEGIN TRANSACTION e termina esplicitamente con una dichiarazione COMMIT o ROLLBACK.



La demo che abbiamo appena menzionato si è conclusa con il Rollback, quindi l'esecuzione di SQL non ha effetto. I dati non furono modificati con successo.

Nello sviluppo e nelle applicazioni effettive, di solito impostiamo un livello di transazioni al di fuori dell'istruzione non query per garantire l'integrità e la coerenza dei dati in base alle esigenze reali. O fai tutto o non fai tutto.

Ci sono due variabili di sistema che registrano l'SQL che è difettoso. - @@rowcount restituisce il numero di linee interessate @@error restituisce la codifica sbagliata

Usiamo queste due variabili di sistema per determinare se c'è un errore in SQL ed eseguiamo le due istruzioni SQL sopra elencate.



#Procedure memorizzate

Significato: Incapsulare un processo eseguito (che può essere complesso) in un nome, e poi usare quel nome per eseguire il processo.



>
Procedure memorizzate senza parametri


>Stored procedure con parametri



>Procedura memorizzata con valore di ritorno



prova a prendere nel database



Esistono anche stored procedure con parametri predefiniti, menzionate nell'articolo precedente sulla paginazione.


Epilogo


Le stored procedure sono usate di più nei nostri progetti veri e propri, molti sistemi antichi, la logica di business è scritta nelle stored procedure, e le persone dietro le mantengono, e vogliono semplicemente spaccare la testa del cane davanti a loro in pochi minuti. In generale, la logica di business è scritta nel codice, ma il numero di volte che i dati vengono letti dal database e la logica di business è scritta nel processo di archiviazione. L'anno scorso, una serie molto complessa di logiche di business nel progetto dell'azienda è stata spostata nel processo di stoccaggio, aumentando la velocità di decine di volte. Naturalmente, le circostanze speciali sono trattate in modo speciale. L'applicazione specifica dipende dallo scenario reale.






(Nota: Il contenuto sopra riportato è gli appunti di studio dell'anno, se ci sono informazioni inappropriate, correggetelo per favore!) )









Precedente:Mi interessa il sistema di assistenza clienti delle grandi aziende
Prossimo:Video di Andale HCNP e HCIE
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com