Defensive Datenbank Programmier- robusten Code mit T-SQL?
-
04-10-2019 - |
Frage
In der Anwendungsentwicklung gibt es ein Konzept der defensiven Programmierung. Wie defensive Programmiertechniken zu implementieren und robusten Code zu schreiben mithilfe von Transact-SQL?
Lösung
- Einfache Diskussion ...
- ... Bücher
- SQL Server-Zentral
- Alexander Kuznetsov (der SO Benutzer AlexKuznetsov )
Allgemein
- try..catch und Fehlerbehandlung
- Datentyp Sicherheit (keine Zahl zu vergleichen, gegen nvarchar zum Beispiel)
- Verstehen Transaktionen
- Betrachten Sie gespeicherte Prozeduren
- Verstehen Sie SQL-Injection
Andere Tipps
So fügen Sie zu dem, was Scott sagte:
- Verwenden Sie try / catch, die jetzt in SQL Server unterstützt wird,
- Überprüfen Sie die Parameter Ihrer Verfahren und Verwendung RAISERROR, wenn die Dinge nicht passieren
- Verwenden Sie Transaktionen (vorsichtig)
IF EXISTS()
ist etwas, das viel öfter in T-SQL verwendet werden soll, denke ich. Eine Menge Zeit, wenn Entwickler SQL-Code schreiben sie denken nicht in Bezug auf Ausnahmen und Fehler, wie sie tun, wenn regelmäßigen Code zu schreiben.
Um den psychologischen Winkel auf Ihre Frage zu prüfen, können Sie feststellen, DBA Survival Skills -. Denken Sie Defensiv interessante Lektüre sein
Zusätzlich zu dem, was alle anderen gesagt, die Datenintegrität in der Datenbank erzwingen!