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!) )
|