防御性数据库编程 - 使用T-SQL的健壮代码?

时间:2010-09-22 20:00:49

标签: sql sql-server database sql-server-2008 defensive-programming

在应用程序开发中,存在防御性编程的概念。如何使用Transact-SQL实现防御性编程技术和编写健壮的代码?

5 个答案:

答案 0 :(得分:5)

更一般地说

  • 了解TRY..CATCH and error handling
  • 数据类型安全性(例如,与nvarchar没有数字比较)
  • 了解交易
  • 考虑存储过程
  • 了解SQL注入

答案 1 :(得分:2)

增加斯科特的说法:

  • 使用SQL Server现在支持的TRY / CATCH
  • 验证程序的参数,并在未通过的情况下使用RAISERROR
  • 使用交易(谨慎)

答案 2 :(得分:1)

IF EXISTS()
我认为

应该在T-SQL中经常使用。很多时候,当开发人员编写SQL代码时,他们不会像编写常规代码那样考虑异常和错误。

答案 3 :(得分:1)

考虑到你问题的心理角度,你可能会发现DBA Survival Skills – Think Defensively是有趣的阅读。

答案 4 :(得分:0)

除了所有其他人所说的,还要在数据库中强制执行数据完整性!