SQLSERVER隐式转换剖析.docxVIP

  • 10
  • 0
  • 约2.72千字
  • 约 10页
  • 2021-01-13 发布于山东
  • 举报
SQL SERVER中隐式转换的一些细节浅析 其实这是一篇没有技术含量的文章,精通 SQL优化的请绕道。这个缘起于在优化一个 SQL过程中,同事问了我一个问题,为什么 SQL中存在隐式转换,但是执行计划没有变? 我思索了一下,觉得这个问题也有点意思, 说不定有些对隐式转换了解得不深入的同学都有此疑问, 那么下面结合上下文场景做一个细节方面的解答。 我们一个系统中使用了 ORMLite 框架,粗心的开发人员弄出了不少下面这样的 SQL语句,都存在隐式转换问题,如下所示,表 machine_stop_alarm_msg 的结构如下,字段 machine_no 、status 都为VARCHAR(10),但是下面 SQL,传入的变量 @P0,@P1都是 NVARCHAR(4000)类型。 DECLARE @P0 nvarchar(4000),@P1 nvarchar(4000); SET @P0=1 ; SET @P1=K172 ; SELECT [recid],[machine_no] ,[stop_stime] ,[stop_etime] ,[status] ,[memo] ,[createddate] FROMmachine_stop_alarm_msg t WHERE1=1 AND t.status=@P0 AND t.machine_no in (@P1 ) ORDER BY

文档评论(0)

1亿VIP精品文档

相关文档