求解动态SQL中单引号(也许是转义符)用法,就是问代码中有的地方时三个引号,有的是两个,(补充) 5

是如何配对的,或者说作何理解?代码如下:EXECUTE('CREATEDATABASE'+@DatabaseName+'ONPRIMARY(NAME='''+@Datab... 是如何配对的,或者说作何理解?代码如下:
EXECUTE (
'CREATE DATABASE ' + @DatabaseName +
' ON PRIMARY
( NAME = ''' + @DatabaseName + '''
, FILENAME = ''F:\SQLDataFiles\' + @DatabaseName + '_data.mdf''
, SIZE = 20MB
, MAXSIZE = 100MB
, FILEGROWTH = 30%)
, FILEGROUP '+@FileGroupName +'
( NAME = ''' + @FileGroupName + '''
, FILENAME = ''F:\SQLDataFiles\' + @DatabaseName + '_data.ndf''
, SIZE = 2048KB , FILEGROWTH = 20%)
LOG ON
( NAME = ''' + @DatabaseName + '_log'+'''
, FILENAME = ''F:\SQLLogFiles\' + @DatabaseName + '_log.ldf''
, SIZE = 100MB
, FILEGROWTH = 20%);
ALTER DATABASE ' + @DatabaseName +
' MODIFY FILEGROUP ' + @FileGroupName + ' DEFAULT')
展开
 我来答
生活呀真美好
2011-04-12 · TA获得超过1101个赞
知道小有建树答主
回答量:902
采纳率:0%
帮助的人:847万
展开全部
单引号是sql的保留字,再加一个单引号,即同时有2或3个时,sql才认为是按一个单引号进行执行。
具体的情况要进行调试,才能明白。
可以declare strsql nvarchar(1000)
strsql = '......',即你的语句
print strsql
这样就可以观察和调整了。
传说中的鹰王
2011-04-10 · TA获得超过1053个赞
知道小有建树答主
回答量:923
采纳率:87%
帮助的人:602万
展开全部
实在不好理解的话,用char(39)代替。我写程序都会写成char(39),自己看起来也比较明白

set @a=@DatabaseName+char(39)+'abc'+char(39)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
牧之卉0j1
2011-04-10 · TA获得超过1151个赞
知道大有可为答主
回答量:1689
采纳率:0%
帮助的人:1859万
展开全部
单引号在引号内用''表示
如要表示值:变'量
declare @c varchar(6)
set @c='变''量'
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式