首页 热点资讯 义务教育 高等教育 出国留学 考研考公

动态SQL语句的insert into语法

发布网友 发布时间:2022-04-25 02:35

我来回答

2个回答

热心网友 时间:2022-04-10 23:23

你原来错误是
消息 8178,级别 16,状态 1,第 1 行
参数化查询 '( @a int ,@b varchar(80) ,@c int,@d varchar(80))insert into A (c' 需要参数 '@a',但未提供该参数。

declare @newid nvarchar(50)
select @newid=NEWID()
exec sp_executesql N'insert into A (col1,col2,col3,col4) values (@a,@b,@c,@d) ',N' @a int ,@b varchar(80) ,@c int,@d varchar(80)',0,'测试',0,@newid

在Sql Server 2008 R2已经成功插入.

热心网友 时间:2022-04-11 00:41

你可以写成
exec sp_executesql N'insert into A (col1,col2,col3,col4 ) values (@a,@b,@c,newid()) ',
N' @a int ,@b varchar(80) ,@c int,@d varchar(80)',0,'测试',0追问newid()函数必须select才能用

追答你是什么版本啊?我05、08测试都没问题,都可以

create table #a(id varchar())
exec sp_executesql N'insert into #a (id) values (newid())'

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com