De prestaties van een gift beïnvloed door verschillende factoren, en een van hen is zeker de tijd die het kost om te verwerken SQL Server T-SQL-query's (query's) dat de aanvraag zelf maakt. Soms is de database-structuur die de snelheid van query's invloeden, andere is de manier waarop ze zijn geschreven instructies om een ​​negatieve invloed op de prestaties hebben. In dit geval is het herschrijven juiste T-SQL van SQL Server helpt de motor om de prestaties te optimaliseren.
Er zijn suggesties voor het schrijven van T-SQL-query (evenals andere apparaten) die, indien toegepast, resulteren in een verbetering van hun snelheid van uitvoering en daarmee de prestaties van de applicaties die ze gebruiken en dan zullen we zien wat.
Het zal gebeuren op alles om een ​​vraag als dit schrijven
SELECT * FROM [tabelnaam]
Met behulp van het sterretje geeft aan dat de motor van onze database die we willen alle kolommen van de tabel te zien in de FROM-component. Het is echter niet een goede praktijk, zelfs als het doel is het verkrijgen van de waarden van alle kolommen. Het is altijd beter om uit te leggen dat de naam van de kolommen
SELECT id, code, omschrijving, DataModifica FROM [tabelnaam]
Expliciet schrijf de naam van de kolommen heeft een aantal voordelen: ten eerste, SQL Server geeft alleen de gegevens die onze applicatie nodig heeft, en geen extra gegevens die niet mogen worden gebruikt rapport terug alleen vereist de gegevens zal de werklast van SQL Server te verminderen en tenslotte op deze manier vermindert de belasting van het netwerk (in termen van overgedragen bytes) bij de ontvangst van de query resultaten.
Een ander aspect niet te onderschatten, is dat duidelijk de naam van de kolommen in zekere zin hebben we onze applicatie te isoleren van mogelijke toekomstige problemen in verband met het veranderen van het schema van de tabellen waaruit gegevens worden uitgepakt. In feite, als je gebruik maken van de asterisk, en op een dag iemand beslist om de tafel te worden ondervraagd in onze applicatie zou het niet begroot om bijkomende informatie te ontvangen op het moment van de uitvoering ervan te wijzigen. Dit in sommige gevallen kan leiden tot het ontstaan ​​van niet-opgeloste fouten. Indien echter de applicatie vragen zijn opgenomen in de kolom namen zullen nooit dit probleem (tenzij natuurlijk het schema van de tabel is verwijderd een kolom in de SELECT-lijst van de kolommen).
Zoals in het vorige geval ook in de instructies voor het invoeren van gegevens (INSERT) in een tabel is een goed idee om expliciet identificeren van de naam van de kolommen worden verbeterd.
In feite, als we schrijven een INSERT-instructie als deze
TabellaLettere INSERT INTO VALUES ('A', 'B', 'C')
SQL Server zal verwachten dat de tabel in kwestie bestaat uit slechts drie kolommen. Als u om welke reden dan ook een kolom aan de tabel toe te voegen door het uitvoeren van deze instructie krijg je de volgende foutmelding
Kolom naam of het nummer van de geleverde waarden komt niet overeen met tabel definitie.
Als in plaats daarvan schrijven we de verklaring als volgt
INSERT INTO TabellaLettere (eerste, tweede, derde) VALUES ('A', 'B', 'C')
worden toegevoegd aan de tabel, zelfs als een of meer kolommen, het zal blijven om succesvol te zijn.
| |
MS Access Cursus
Leer hoe het maken en beheren van databanken gemakkelijk en snel. Vanaf 29 €. |
| |
Cursus MySQL
Beheer van de open source database. Vanaf 39 €. |
| |
Cursus Database en SQL
Het creëren en beheren van relationele databases. Vanaf 39 €. |