mysql sp executesql_T-SQL - sp_executesql语法_weixin_39537977的博客-程序员宅基地

技术标签: mysql sp executesql  

--方法1查询表改为动态

select * from sysobjects

exec('select ID,Name from sysobjects')

exec sp_executesql N'select ID,Name from sysobjects'--多了一个N为unicode

--方法2:字段名,表名,数据库名之类作为变量时,用动态SQL

declare @FName varchar(20)

set @FName='ID'

exec('select '+@FName+' from sysobjects where '+@FName+'=5' )

declare @s varchar(1000)

set @s=N'select '+@FName+' from sysobjects where '+@FName+'=5'

exec sp_executesql @s--会报错

declare @s nvarchar(1000)--改为nvarchar

set @s=N'select '+@FName+' from sysobjects where '+@FName+'=5'

exec sp_executesql @s--成功

--方法3:输入参数

declare @i int,@s nvarchar(1000)

set @i=5

exec('select ID,Name from sysobjects where ID='+@i)

set @s='select ID,Name from sysobjects where ID=@i'

exec sp_executesql @s,N'@i int',@i--此处输入参数要加上N

--方法4:输出参数

declare @i int,@s nvarchar(1000)

set @s='select @i=count(1) from sysobjects'

--用exec

exec('declare @i int '+@s+' select @i')--把整个语句用字符串加起来执行

--用sp_executesql

exec sp_executesql @s,N'@i int output',@i output--此处输出参数要加上N

select @i

--方法5:输入输出

--用sp_executesql

declare @i int,@con int,@s nvarchar(1000)

set @i=5

select @s='select @con=count(1) from sysobjects where ID>@i'

exec sp_executesql @s,N'@con int output,@i int',@con output ,@i

select @con

--用exec

declare @i int,@s nvarchar(1000)

set @i=5

select @s='declare @con int select @con=count(1) from sysobjects where ID>'+rtrim(@i)+' select @con'

--方法6:动态函数

declare @starttime datetime

declare @endtime datetime

set @starttime = '2009-02-20 00:00:05.680'

set @endtime = '2009-02-20 09:10:05.680'

declare @sql nvarchar(max)

set @sql= N'

select * from Conn_AdminIII_2009_02_10 where starttime between '''+ convert(nvarchar(200), @starttime, 120) +'''

and '''+ convert(nvarchar(200), @endtime, 120) +''' order by duration desc'

exec sp_executesql @sql

4722768579593920709-5108324134269157648?l=xxd79.blogspot.com

分享到:

18e900b8666ce6f233d25ec02f95ee59.png

72dd548719f0ace4d5f9bca64e1d7715.png

2009-02-25 00:41

浏览 1934

评论

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39537977/article/details/113594177

智能推荐

C/C++ string类型转换int类型_MissXy_的博客-程序员宅基地

string类型转换int类型原文地址: http://blog.csdn.NET/caroline_wendyC语言转换形式:[plain] view plain copyprint?... std::string str; int i = atoi(str.c_str()); ... ...std::st

Mac平台上Docker安装与使用_lucca的博客-程序员宅基地

转自: https://blog.csdn.net/jiang_xinxing/article/details/58025417Docker是一个跨平台的轻量级虚拟机,可移植性非常高,一次部署,终生可用。Docker可以在Linux,Windows,MacOS等平台上安装使用。我们都知道Linux有很多不同 的版本,例如Ubuntu,AIX,CentOS,Debian,Fedora,Oracle ...

读书笔记(3)_2021乐乐的博客-程序员宅基地

1: 坚持每天多做一点点,回报总会在你不经意间,以一种出人意料的方式来到你的面前,除了自己的本职工作外,你还能做些什么。2: 爱能使心灵的创伤痊愈,非暴力意味着让爱融入生活。让尊重、理解、欣赏、感激和慈悲,而不是自私自利,贪婪、憎恨和偏见来主导生活。3: 非暴力活动的关键是:感谢生活的赐予,不贪心。4:当我们真诚助人的时候,我们丰富他人的愿望就会得到满足。5:学会清楚表述自己得请求...

解决查看不了/data/data目录的问题_y_chengyong的博客-程序员宅基地

最近开发换了个手机,由于使用到了数据库,调试的时候进去看看数据库。导出的时候,报了个权限拒绝的错误,研究了下,发现data目录对其他用户的权限是不可读的,所以导致了打不开这些目录的问题。既然问题找到了,接下来解决就轻松了。1、确保手机已经root过,一般手机很容易root,针对小米手机得刷个开发版,才能获取root权限。这里就不多说了。2、adb连上手机后,打开Android de_data/data

return,return 0 ,return -1 , exit(-1),return 1_return -1 一定会退出程序吗_南苏月的博客-程序员宅基地

对于main函数指定为int型,返回值return,return 0 ,return -1 , exit(-1) ,exit(0)return如果什么都不接的话,其实就是void类型函数的返回,返回后不再执行return后面的语句。return 0一般用在主函数结束时,表示程序正常终止,即告诉系统程序正常。return -1表示从当前执行的函数中返回到调用这个函数的位置,..._return -1 一定会退出程序吗

python边玩边学_边干边学:协程—在Android中使用协程进行改装请求的指南_weixin_26739079的博客-程序员宅基地

python边玩边学In this guide, we will build an app that fetches two random breeds and a list of dog breeds and images and display it via a recycler using coroutines. 在本指南中,我们将构建一个应用程序,该程序可获取两个随机品种以及狗品种和图像的...

随便推点

python办公室自动化_用Python自动办公,做职场高手全16讲(无需程序员基础) | 樱花庄...-程序员宅基地

Python编程最近很受欢迎。这不是一个常见的说\u201C生命是短暂的,我使用python\u201D。这是有意义的。一个是比其他语言更容易学习,,另一个是伟大的功能,可以爬行和编写工具。樱花还计划去学习。当然,我想用它来写爬虫。获取一些有用的东西。这里与大家分享一组教程来实现自动办公使用python。适用人群:0基础的学生不是程序员;人通常处理办公软件;那些想通过自动提高工作效率,减少重复工作..._办公室python

Loadrunner使用数据库参数化报错“Failed to read file *** \*.dat from line 1,check format”_loadrunner报错please check format_看,月亮在跳舞的博客-程序员宅基地

报错截图:参数化数据错误原因:参数化的数据使用了sql语句对多行数据进行了组装,然后以逗号分隔,与loadrunner分隔符冲突解决方法:修改file format不使用逗号分隔即可_loadrunner报错please check format

vue-cli3中process.env.BASE_URL配置、接口代理以及其他配置_继续继续努力的博客-程序员宅基地

vue-cli3的源码部分:@vue/cli-service/lib/util/resolveClientEnv.jsmodule.exports = function resolveClientEnv (options, raw) { const env = {} Object.keys(process.env).forEach(key => { if (pre..._process.env.base_url

转:mfc 在ListCtrl控件的非第一列添加图标_我是云妮的博客-程序员宅基地

转:http://wanderwarriorhsiao.blog.hexun.com/13005981_d.html一.CListCtrl在第一列添加图标CListCtrl可以很方便的在第一列添加图标, 并且在不同的显示方式(1:LVS_ICON: 为每个item显示大图标;2:LVS_SMALLICON: 为每个item显示小图标;3: LVS_LIST: 显示一列带有小图标的i

jrebel eclipse/tomcat 使用方法-编译后不再需要重启_jojo52013145的博客-程序员宅基地

环境:eclipse tomcate5.0 做web项目,修改java文件后需要重启项目,每次重启需要很长时间。听说使用jrebel后就能自动加载。 网上看了一些文章,也看了jrebel的文档,一直不成功,今天又发现一文章,小试一小,成功了。希望能对大家有用。 1. http://www.zeroturnaround.com/jrebel/current/ 下载jRebe(30天试用,网上也有不少破解的我找了一个http://d.namipan.com/d/b

PAT 甲级 1146 Topological Order (25 分)_Yuhan の Blog的博客-程序员宅基地

思路:1.一个简单的求拓扑排序(Topological Order)的算法是找出任意一个入度为0的顶点,然后删去该顶点,然后对图的剩余部分做相同的操作,删去的顶点序列即是一个拓扑序列;2.根据题目所给的有向边,用数组存储每个顶点的入度,用vector数组存储每个顶点下一个可达顶点(有多个可达顶点);3.根据需要查询的序列,从前往后,每个顶点的入度都要为0,每试一个顶点且此顶点符合要求,此顶点...

推荐文章

热门文章

相关标签