• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

T-SQL静态代码分析

发布: 2010-7-07 10:42 | 作者: 不详 | 来源: 领测测试网采编 | 查看: 98次 | 进入软件测试论坛讨论

领测软件测试网

  T-SQL静态代码分析  软件测试

  静态代码分析,在Windows平台上长期受到忽视,近几年却变得越来越重要。静态分析重新获得关注,始于一款Microsoft内部的工具——FX Cop,由于它非常受欢迎,所以微软将其公开发布。在Visual Studio 2005中,FX Cop作为Visual Studio团队开发版的一部分集成到该IDE中。

  带有附加功能或免除单元测试需要的第二代工具正在研发当中,包括.NET4的Code Contracts和自主研发的NStatic。

  托管代码并不是唯一获得关注的领域。Ubitsoft公司正对T-SQL应用相同的技术。随着数据库增长,封装在T-SQL中的业务逻辑数量变化相当明显,有时候甚至在重要性方面胜过普通代码。要协助管理这一情况,Ubitsoft公司创建了SQL Enlight。我们就此和他们的开发主管Iliyan Stoyanov进行了沟通。

  这是个相当新颖的产品,你可以给我们一些关于SQL Enlight如何诞生的背景吗?

  我们设计SQL Enlight作为T-SQL管理和反射工具,但由于我们需要更多的时间来实现心中的所有想法,所以决定先发布T-SQL重格式化功能,稍后逐步来添加新功能。

  你决定对Transact-SQL脚本分析提供支持是基于哪一点考虑呢?

  从本项目开始,该分析功能就是我们其中一个目标,但我们决定推迟它的发布,直到我们完成T-SQL语法分析器扩展为止,它支持新的SQL Sever 2005 T-SQL语法。

  你如何决定给分析添加哪些规则呢?

  我们实现的分析规则基本上来自互联网找到的提示和实践,或者来自SQL Enlight用户提交给我们的分析规则请求。

  你们的技术支持提到过你正研发一个新版本,它会对整个数据库进行分析。可以给我提供一些关于它的信息吗?

  是的。我们正研发新的1.6版本,它将是我们SQL Enlight1.x版本的里程碑。该新版本会包含两项重要特性——创建自定义分析规则功能和支持在数据库上运行分析。我们也打算包含命令行工具和MsBuild任务。

  SQL Enlight当前版本支持这些分析规则。

  设计

  包括NULL常量在内的相等和不等比较

  非ANSI外部联接语法

  非ANSI内部联接语法

  过时的语法,字符串_别名=表达式

  在执行数据操作语句(像INSERT/UPDATE/DELETE)之后,使用TRY..CATCH结构或者检查该@@ERROR变量

  在存储过程、视图和表值函数中支持SELECT *

  使用SCOPE_IDENTITY()替换@@IDENTITY

  支持ORDER BY子句中使用常量已经过时

  TOP子句用在不带ORDER BY子句的查询

  在INSERT语句中总是使用列的列表

  反对不带WITH关键字的表提示用法

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: 代码 静态

21/212>

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网