组合sql语句和存储过程中写定的sql语句的效率问题
在存储过程中
写
select * from Ta
和
set @sql= 'select * from Ta '
exec(@sql)
这两者之间存在效率上的差别么
上面的只是问题的形式
set语句可能会把多个参数组合起来连结成一条语句
------解决方案--------------------差别不会大
------解决方案--------------------如果select語句是一樣的話, 沒什麽差別
------解决方案--------------------select * from Ta
和
set @sql= 'select * from Ta '
exec(@sql)
差别不大的
但是如果是exec sqlexecute,就有差别了,因为sqlexecute会重复执行的,相比exec提高了效率
------解决方案--------------------效率差不多,但用exec 执行SQL组合要比在客户端发SQL命令要有优势得多,第一减少了网络流量,第二增加了业务逻辑处理的灵活性