有一条创建存储过程的sql语句看不懂,不明白里面的中括号起什么作用?可以去掉吗? 30
语句如下:CREATEPROCEDUREdbo.ExistByID(@strTableNamevarchar(255),@strFieldNamevarchar(255)...
语句如下:
CREATE PROCEDURE dbo.ExistByID
(
@strTableName varchar(255),
@strFieldName varchar(255),
@intFieldValue varchar(255),
@bitResult bit output
)
AS
SET NOCOUNT ON
DECLARE @strSQL varchar(3000)
DECLARE @nCount int
if object_id('dbo.#tempTable') is NULL
create table #tempTable(temField int)
else
truncate table #tempTable --清空临时表
/*在数据库中检索符合条件的记录数并存储在临时表中*/
select @strSQL='select count (['+@strFieldName+']) from ['+@strTableName+'] where ['+@strFieldName+']='+convert(varchar(50),@strFieldName)
select @strSQL='insert #tempTable'+@strSQL
EXEC(@strSQL)
select top 1 @nCount=temField from #tempTable order by temField
drop table #tempTable
if @nCount>0
select @bitResult=1
else
select @bitResult=0
GO
请各位大虾帮忙指点一下,里面出现的中括号是什么意思,可以去掉吗?另外set nocount on是什么意思?请个位高手不临赐教,万分感谢!
请大虾详细说明一下上述语句中单引号和中括号的作用,在这里应用是否是必须的。另外set nocount on这句是什么意思?谢谢!谢谢!谢谢! 展开
CREATE PROCEDURE dbo.ExistByID
(
@strTableName varchar(255),
@strFieldName varchar(255),
@intFieldValue varchar(255),
@bitResult bit output
)
AS
SET NOCOUNT ON
DECLARE @strSQL varchar(3000)
DECLARE @nCount int
if object_id('dbo.#tempTable') is NULL
create table #tempTable(temField int)
else
truncate table #tempTable --清空临时表
/*在数据库中检索符合条件的记录数并存储在临时表中*/
select @strSQL='select count (['+@strFieldName+']) from ['+@strTableName+'] where ['+@strFieldName+']='+convert(varchar(50),@strFieldName)
select @strSQL='insert #tempTable'+@strSQL
EXEC(@strSQL)
select top 1 @nCount=temField from #tempTable order by temField
drop table #tempTable
if @nCount>0
select @bitResult=1
else
select @bitResult=0
GO
请各位大虾帮忙指点一下,里面出现的中括号是什么意思,可以去掉吗?另外set nocount on是什么意思?请个位高手不临赐教,万分感谢!
请大虾详细说明一下上述语句中单引号和中括号的作用,在这里应用是否是必须的。另外set nocount on这句是什么意思?谢谢!谢谢!谢谢! 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询