为了账号安全,请及时绑定邮箱和手机立即绑定

TSQL,sp_executesql 我这个SQL 总报错 过程需要类型为 'ntext/nchar/nvarchar' 的参数 '@parameters

TSQL,sp_executesql 我这个SQL 总报错 过程需要类型为 'ntext/nchar/nvarchar' 的参数 '@parameters

烙印99 2018-12-07 08:43:26
declare @InsertSQL nvarchar(MAX); set @InsertSQL = N'Insert Into dbo.['+@tableName+N'](ParentID,SourceID,NickName,Content,IP,City,BeFiltered,[Disable]) values (@ParentID,@SourceID,@NickName,@Content,@IP,@City,@BeFiltered,@Disable);select @InsertedID = SCOPE_IDENTITY();'; exec sp_executesql @InsertSQL, '@ParentID int,@SourceID int,@NickName nvarchar(20),@Content nvarchar(300),@IP nvarchar(30),@City nvarchar(30),@BeFiltered bit,@Disable bit,@InsertedID int output', @ParentID, @SourceID, @NickName, @Content, @IP, @City, @BeFiltered, @Disable, @InsertedID output;
查看完整描述

2 回答

?
慕姐8265434

TA贡献1813条经验 获得超2个赞

declare @InsertSQL nvarchar(MAX);
    set @InsertSQL = N'Insert Into dbo.['+@tableName+N'](ParentID,SourceID,NickName,Content,IP,City,BeFiltered,[Disable])
    values (@ParentID,@SourceID,@NickName,@Content,@IP,@City,@BeFiltered,@Disable);select @InsertedID = SCOPE_IDENTITY();';
    
    exec sp_executesql @InsertSQL,
    N'@ParentID int,@SourceID int,@NickName nvarchar(20),@Content nvarchar(300),@IP nvarchar(30),@City nvarchar(30),@BeFiltered bit,@Disable bit,@InsertedID int output',
    @ParentID,
    @SourceID,
    @NickName,
    @Content,
    @IP,
    @City,
    @BeFiltered,
    @Disable,
    @InsertedID output;

已经修正错误

查看完整回答
反对 回复 2019-01-07
?
猛跑小猪

TA贡献1858条经验 获得超8个赞

你在创建过程的时候并没有给他输入参数,为什么你在执行的时候会给它输入参数呢?

查看完整回答
反对 回复 2019-01-07
  • 2 回答
  • 0 关注
  • 440 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信