createPROCEDURE [dbo].[CreateTrackLogTablePR]
(
@TerID INT
)
AS
----开始事务----
BEGIN TRANSACTION
---- 声明变量 ----
DECLARE @SqlStr VARCHAR(2000)
BEGIN
SET @SqlStr=N'SELECT * INTO Sys_TrackLogTB_'+@TerID +' FROM Sys_TrackLogTB where 1<>1'
exec @SqlStr
END
IF @@ERROR > 0
BEGIN
rollback transaction
--回滚
END
ELSE
BEGIN
commit transaction
--提交
ENDRETURN
(
@TerID INT
)
AS
----开始事务----
BEGIN TRANSACTION
---- 声明变量 ----
DECLARE @SqlStr VARCHAR(2000)
BEGIN
SET @SqlStr=N'SELECT * INTO Sys_TrackLogTB_'+@TerID +' FROM Sys_TrackLogTB where 1<>1'
exec @SqlStr
END
IF @@ERROR > 0
BEGIN
rollback transaction
--回滚
END
ELSE
BEGIN
commit transaction
--提交
ENDRETURN
没加括号?
exec (@SqlStr)类型转换,exec那里最好加上括号目前发现这俩问题
这个要定义成 NVARCHAR(2000)