set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
goALTER PROCEDURE [dbo].[Session]
@username varchar(50) ,@i_result INT OUTPUT
AS
BEGIN
DECLARE @v_sql varchar(200)
if object_id('tempdb.dbo.##user'+ @username) is null
begin
set @v_sql = 'create table ##user'+@username +'(username varchar(100))'
exec(@v_sql)
set @i_result = 0
end
else
set @i_result = 1
END错误提示
消息 208,级别 16,状态 6,过程 Session,第 14 行
对象名 'dbo.Session' 无效。
set QUOTED_IDENTIFIER ON
goALTER PROCEDURE [dbo].[Session]
@username varchar(50) ,@i_result INT OUTPUT
AS
BEGIN
DECLARE @v_sql varchar(200)
if object_id('tempdb.dbo.##user'+ @username) is null
begin
set @v_sql = 'create table ##user'+@username +'(username varchar(100))'
exec(@v_sql)
set @i_result = 0
end
else
set @i_result = 1
END错误提示
消息 208,级别 16,状态 6,过程 Session,第 14 行
对象名 'dbo.Session' 无效。
set QUOTED_IDENTIFIER ON
go ALTER PROCEDURE [dbo].[Session]
@username varchar(50) ,@i_result INT OUTPUT
AS
BEGIN
DECLARE @v_sql varchar(200)
if object_id('tempdb..##user'+ @username) is null
begin
set @v_sql = 'create table ##user'+@username +'(username varchar(100))'
exec(@v_sql)
set @i_result = 0
end
else
set @i_result = 1
END 这样试下
set QUOTED_IDENTIFIER ON
go CREATE PROCEDURE [dbo].[Session] --这里要先创建吧
@username varchar(50) ,@i_result INT OUTPUT
AS
BEGIN
DECLARE @v_sql varchar(200)
if object_id('tempdb..##user'+ @username) is null
begin
set @v_sql = 'create table ##user'+@username +'(username varchar(100))'
exec(@v_sql)
set @i_result = 0
end
else
set @i_result = 1
END 好像提示过程名不存在.
set QUOTED_IDENTIFIER ON
go alter PROCEDURE [dbo].[Session]
@username varchar(50) ,@i_result INT OUTPUT
AS
BEGIN
DECLARE @v_sql varchar(200)
if object_id('tempdb.dbo.##user'+ @username) is null
begin
set @v_sql = 'create table ##user'+@username +'(username varchar(100))'
exec(@v_sql)
set @i_result = 0
end
else
set @i_result = 1
END
----------------------
命令已成功完成。
@username varchar(50) ,@i_result INT OUTPUT
AS
BEGIN
DECLARE @v_sql varchar(200)
if object_id('tempdb..##user'+ @username) is null
begin
set @v_sql = 'create table ##user'+@username +'(username varchar(100))'
exec(@v_sql)
set @i_result = 0
end
else
set @i_result = 1
END declare @i int
exec [dbo].[Session] 'tony',@i output
select @i
--第一次显示 0 第二次显示 1
--测试成功
set QUOTED_IDENTIFIER ON
go ALTER PROCEDURE [dbo].[Session] -------这里的ALTER 改为CREATE
@username varchar(50) ,@i_result INT OUTPUT
AS
BEGIN
DECLARE @v_sql varchar(200)
if object_id('tempdb.dbo.##user'+ @username) is null
begin
set @v_sql = 'create table ##user'+@username +'(username varchar(100))'
exec(@v_sql)
set @i_result = 0
end
else
set @i_result = 1
END