这篇文章主要介绍了怎么写出易调试的SQL,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.前言相比高级语言的调试如C# , 调试SQL是件痛苦的事 . 特别是那些上千行的存储过程, 更是我等码农的噩梦.在将上千行存储过程的SQL 分解到 C# 管理后, 也存在调试的不通畅, 如何让调试流畅些呢2.常见调试2.1 通常在Dapper 里面一个断点下去, 抓到类似如下SQL:各种@符号, 需要手工替换后才能调试(麻烦), 要是能抓到最终SQL就好了2.2 庆幸的是可以通过SQLServer Profiler 来抓到最终SQL但是生产环境中的SQLServer, 并发执行的SQL 非常多, 如上图所见, 在一大堆SQL 里面找到你刚才执行的SQL也比较麻烦, 即使可以Ctrl + F 调出搜索框来搜索, 也要想个好的关键字来搜索 , 麻烦.3.解决方案既然我们想要最终的SQL , 为毛不在丢给Dapper 执行前, 就已经是最终SQL了呢, 上工具代码:调用示例:这样丢给Dapper 执行的SQL 始终是最终SQL, 就不用煞费苦心去抓了.PS: 有人可能会质疑这样替换的效率,不用担心已测试 , C#的字符串替换是非常快的, 上面的调用实例, 当时的测试结果是 微妙和纳秒级别, 有兴趣的看管可以再测试.4. ***现在丢给Dapper执行的不再是 充满@参数的SQL , 而是一个替换好的最终SQL.这样当老板隔老远吼道你说: 小蒋, 你tm 有个XX bug ,赶紧看看.你可以不慌不忙的在 Dapper Query处打个断点鼠标放在SQL变量上, 轻松的拿到最终SQL进行调试, 而不是, 手动去替换@参数, 又或则在SQLServer Profiler 里面大海捞针了!!!感谢你能够认真阅读完这篇文章,希望小编分享的“怎么写出免费主机域名易调试的SQL”这篇文章对大家有帮助,同时也希望大家免费主机域名多多支持云技术,关注云技术行业资讯频道,更多相关知识等着你来学习!
本篇内容介绍了“Oracle 12c数据库扩展的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在oracle 12c之前版本,va免费主机域名rcha…