sqlserver ´æ´¢¹ý³ÌÈçºÎ¶¯Ì¬µÄÉùÃ÷ ±äÁ¿
create procedure test
as
declare @var_0 varchar(100)
declare @cc int
set @cc=0
exec('select @var_'+@cc +'=fullName from contact')
go
exec test
Ö´Ðиô洢¹ý³ÌµÄʱºò »á±¨@var_0 δÉùÃ÷
ÇëÎʸ÷λ´óÏÀ£¬£¬Õâ¸ÃÈçºÎ´¦Àí £¬£¬£¨ÕâÖ»ÊDzâÊÔ£¬£¬ÎÒ×îºóÊÇÏ붯̬µÄÉùÃ÷±äÁ¿£¬ÔÙ¶¯Ì¬µÄ¸øÆä¸³Öµ£©
¶¯Ì¬ÉùÃ÷±äÁ¿£¬±äÁ¿Ò²Ó¦¸ÃÉùÃ÷ÔÚEXECÀïÃæ£¬
@var Õâ¸öÊÇûÓÐÉùÃ÷µÄ¡£
ÓÃ
SP_EXECUTESQL
SQL code:
Alter procedure test
as
--declare @var_0 varchar(100)
declare @cc int
set @cc=0
exec(' declare @var_0 varchar(100) select @var_'+@cc +'=fullName from contact')
go
exec test
declare @cc int
set @cc=0
exec('
declare @var_0 varchar(100) select @var_'+@cc +'=fullName from contact')
SQL code:
Êä³ö²ÎÊý
declare @num int,
@sqls nvarchar(4000)
set @sqls='select count(*) from tableName'
exec(@sqls)
--ÈçºÎ½«execÖ´Ðнá¹û·ÅÈë±äÁ¿ÖУ¿
declare @num int,
@sqls nvarchar(4000)
set @sqls='select @a=count(*) from tableName '
exec sp_executesql @sqls,N'@a int output',@num output
select @num
ÎÒÖ÷ÒªÊÇÏëÏȶ
Ïà¹ØÎÊ´ð£º
ÔÚSqlServerÖÐÈçºÎ²é¿´ÀúÊ·ÉÏÖ´ÐеĴ洢¹ý³ÌµÄÐÅÏ¢ÄØ£¬È磺´«Èë²ÎÊý£¬Ö´ÐÐʱ¼äµÈµÈ¡£Èç¹û²»Äܲ鿴ÀúÊ·¼Ç¼£¬ÊÇ·ñ¿ÉÒÔ×Ô¼ºÐ´´¥·¢Æ÷Ö®ÀàµÄ£¬È˹¤¿ØÖÆÄØ£¬ÔÚOracleÀïÃæÓж¯Ì¬ÊÓͼ¿ÉÒÔËæÊ±²é¿´ÀúÊ·Ö´ÐеÄsqlÓï¾ä£¬SqlSer ......
ÊÇÕâÑùµÄ£¬ÎÒÓÃÊÇODBCÊý¾ÝÔ´Á¬½Ó·þÎñÆ÷µÄÊý¾Ý¿â£¬ÏÖÔÚÎÒ¾õµÃºÜÂé·³£¬ÒòΪҪΪÿÈç»úÌí¼Ó¶ÔÓ¦µÄÊý¾ÝÔ´£¬Ïë°ÑËû¸Ä³ÉADO·½·¨À´·ÃÎÊ·þÎñÆ÷µÄÊý¾Ý¿âÄÜʵÏÖÂð£¿ÒªÔõôд¡£
±ÈÈç·þÎñÆ÷ÀïÓжþ¸öÊý¾Ý¿âdata1 ºÍdata2£¬¿Í»§ ......
ÔÚÊý¾Ý¿âÖÐÓÐÕÅ±í£¬ÓÐid,nameÁ½ÁУ¬id ÊÇÖ÷¼ü,ûÓÐÉèÖÃ×ÔÔöÊôÐÔ,ÔÚ³ÌÐòÖÐÈ¡³öÕâÕűí·ÅÈëdatatable£¬ÔÚÕâ¸ödatatableÖвåÈëÒ»Ìõ¼Ç¼£¬µ±¸üÐÂÊý¾Ý¿âʱÌáʾidÁв»ÄÜΪ¿Õ£¬ÇëÎʸÃÔõô½â¾ö£¿
¸øËüÒ»¸öÖµ£¡£¡Ö÷¼ü²»ÄÜΪ¿Õ ......
´ÓÍøÉϲ鵽µÄ×ÊÁÏ˵£¬ÈκÎÊý¾ÝÀàÐÍÓëNULLÖµ½øÐмÆË㣬½á¹û¶¼½«ÎªNULL.
select null-1
½á¹ûÊÇnull
¿ÉÊÇÏÂÃæÕâ¸ö²éѯΪʲô»á³ö´íÄØ£¿
select isnull(null-1,'test');
¾ÓÈ»±¨´í˵½«varcharתΪintʧ°Ü¡£
Ϊʲô» ......
create trigger [trgDeleteEuser]
on [dbo].[E_UserInfo]
for delete
as
delete Job_Info from Job_Info j join Deleted d on j.user_name=d.user_name
delete job_evaluation from job_evaluation ......