打造自己的辅助工具,提高开发效率

打造自己的辅助工具,提高开发效率

本文涉及的知识是非常简单而又基础的,但是活用这些知识可以显著的提高您的开发效率,您还可以发挥创意扩展自己的开发工具。

1、基础知识点:

知识点1:可以在当前数据库直接访问master数据库中存储过程名称以sp_开始(且必须是以sp_开始)的存储过程。

说明:执行存储过程时,“如果过程名称的前三个字符为 sp_SQL Server 会在 Master 数据库中寻找该过程。如果没能找到合法的过程名称,SQL Server 会寻找所有者名称为 dbo 的过程”(参见Sql Server联机帮助文档(索引“存储过程:执行”))。这实际上是在暗示我们用户自定义的存储过程名称最好不要用sp_开始,这样可以缩短(可能没有那么显著)存储过程时间。

知识点2:在开发过程中,常常要察看一个表中的数据,经常在查询分析器中重复的输入“select * from ”您是不是觉得很烦,至少我觉得很烦。其实我们可以将常用的语句在查询分析器中定义为一个快捷键(如图一),要执行时仅需按快捷就可以直接执行,省掉输入过程,少了输入的错误,是不是很爽?运用知识点1中的技巧,将常用语句写成一个存储过程(为什么要写成存储过程在后面详述)master数据库中,就可以在任何数据库下调用您的常用语句了。

说明:当您按下快捷键执行命令时,查询分析器首先调用“sp_sproc_columns”存储过程,判断此快捷键对应的语句输入参数是什么,若sp_sproc_columns返回空结果集(非存储过程也会返回空结果集),则认为执行此语句不需要参数,直接执行此语句;若有结果集,则将查询分析器中选中部分作为参数传入并执行语句。所以,我们简单的要将“select * from”这类语句定义为快捷键命令都必须要定义为存储过程,否则无法接收传入参数。

 

图一、将常用语句定义为快捷键

2、看我抛砖:

       结合实际工作,我写了四个常用存储过程,定义为快捷键,实现即时快速调用。

2.1、表结构显示

       过程名:sp_tableframe

       缘起:开发中我们严禁在数据窗口、视图、存储过程中存在“select *”和“insert into values”这类不指明目标列的写法,但要逐个字段输入太烦易错;存储过程中常常存在从物理表形成临时表的需求,严谨的写法是“create table #临时表名”(select * into #临时表名 的写法可能会锁tempdb数据库,不建议使用),但create table 后的内容要逐个字段输入也是太烦易错;我们还常有要看表字段的中文注释、数据类型、默认值等内容的需求。

       代码:()

       结果集:(共有4)

       结果集一为表的概况;结果集二为表的列名、类型、主键、描述等属性;结果集三把表的列名按逗号分隔成字符串,使用时直接复制粘贴即可避免重复输入;结果集四和三类似,但带上了字段类型定义信息,可以复制出来用于创建临时表。

2.2、锁表进程查询

       过程名:sp_ShowLock

       缘起:当出现锁表时,我们急需要知道的是谁锁了谁,是在哪个语句上锁了,冲突的资源是什么。但Sql Server缺乏一个能满足我们要求的命令,得,自己写一个。

       代码:()

       结果集:(共有2)

       结果集一:被阻进程、被阻语句、阻进程、阻塞语句、等待时间、CPU时间、磁盘累计读写、登录时间、打开事务、状态、网卡地址

       结果集二:锁定发生的数据库、锁定对象、类型、模式、状态

2.3、表空间使用统计查询

过程名:sp_tablespaceused

缘起:在上几十G的数据库中,我们可能关心数据库中哪个表最大,要知道每个表在数据库中空间占用的大致情况,此过程为解决此问题而做。

代码:()

结果集:()

2.4、形成数据字典

       过程名:sp_MsDataDict

       缘起:整理改善了原来的导出表结构的语句。

结果集:()

 

以上主要介绍了两个知识点,围绕这两个知识点讲了四个例子,希望能起到抛砖引玉的作用,对大家有所帮助。

 
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
开发工具在软件开发生命周期中扮演着至关重要的角色,它们旨在简化和加速从概念设计到产品部署的各个环节。以下是开发工具的主要作用: 代码编写与编辑: 提供集成开发环境(IDE),如Visual Studio、Eclipse、Android Studio和Sublime Text等,这些工具集成了文本编辑器,支持语法高亮、自动补全、代码片段管理和版本控制等功能,有助于开发者高效编写和维护代码。 项目管理: 支持项目创建、组织、构建自动化以及依赖管理,确保不同模块和组件之间的协调一致。 编译与构建: 包括编译器、构建工具(如Make、Gradle、Maven)等,用于将源代码转换为可执行文件或库,并进行资源打包、优化等处理。 调试与测试: 集成调试器允许开发者逐行执行代码,设置断点、查看变量值、跟踪调用堆栈等,帮助定位并修复代码中的错误。 测试框架和工具则协助开发者编写和运行单元测试、集成测试及性能测试,确保软件质量。 版本控制与协作: 通过集成Git、SVN等版本控制系统,支持团队成员间的代码共享、分支管理、合并请求和冲突解决。 可视化设计与原型制作: 对于UI/UX设计,有界面设计工具,如Sketch、Adobe XD,可以帮助设计师快速构建应用程序界面模型,并生成规范的设计稿供开发人员参考实现。 跨平台支持: 跨平台开发工具如Xamarin、React Native和Flutter,让开发者使用一种语言或框架编写可以在多个操作系统上运行的应用程序。 文档编写与API管理: 文档生成工具可以自动生成代码注释文档,便于团队内外理解和使用项目代码。 API管理工具则方便开发者创建、测试、发布和维护API接口。 持续集成与持续部署(CI/CD): Jenkins、Travis CI、GitHub Actions等工具负责自动化构建、测试和部署流程,提高交付效率和可靠性。 数据库管理与ORM工具数据库客户端工具用于连接、查询、更新数据库,ORM(对象关系映射)工具简化了数据操作和持久化层的开发工作。 总之,开发工具极大地提升了软件工程师的工作效率,保证了开发过程中的准确性与一致性,同时也促进了团队合作,使得软件开发更系统化、规范化和工业化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值