当前位置:首页 » 存储配置 » sql存储过程插入表

sql存储过程插入表

发布时间: 2022-08-09 02:27:22

sql存储过程返回的两个结果集,怎么插入到临时表

在接收结果的过程或代码中循环读取结果数据,再插入即可,又或者你可以在将要返回结果集的存储过程中直接插入临时表

Ⅱ sql server如何用存储过程把多个表的数据添加到一张表中,表字段都很相近,我用临时表实现了操作,但是

楼主
可以把需求说清楚点
表名是固定的吗
要传什么变量
然后字段是哪些
如果表名不变
字段类似的话
我帮你写个模型
create
proc
usp_tableall
as
insert
into
表名
--这里表要存在
存储你处理的数据
否则就用select
*
into
from
tb
的格式
select
col1,col2
from
a
union
all
select
col1,col2
from
b
……
go
exec
usp_tableall

Ⅲ SQL2005 使用存储过程,往表里插入数据怎么写

create procere insert_activeinfo
as
begin
insert into insert_activeinfo(activeid,activename,activedate,usertypeid) values(..)
end
go

--这样就可以啊,当然你还可以把要插入的值通过参数传进来,譬如:
create procere insert_activeinfo(@activeid int,@activename varchar(10),@activedate datetime,@usertypeid int)
as
begin
insert into activeinfo(activeid,activename,activedate,usertypeid) values(@activeid,@activename,@activedate,@usertypeid)
end
go

Ⅳ SQL 编写存储过程问题(插入临时表) 条件: into #table 当时间=a时,插入1,2,3 当时间=b时,插入234

请参阅以下脚本

createproc[存储过程名称]
as
begin
if[时间]='a'
begin
insertinto#table([列名])values(1),(2),(3)
end
if[时间]='b'
begin
insertinto#table([列名])values(2),(3),(4)
end
end

请采纳! 如有疑问,请及时沟通!

Ⅳ SQL server 能否将存储过程的结果插入临时表(列数不固定)

当前的做法是不行的:
1、语法是错误的。
-- INSERT INTO EXEC sp,这个语法肯定遇到报错了。
-- 要想作类似操作,至少也要将sp定义成“表值函数”才能将返回的结果值作直接调用

2、PIVOT出来的结果列,未必与预建的表,字段上匹配。

方案:
》在动态语句中,插入临时表。如果是sp中插入,则应为永久临时表 -- 否则调用者访问时已经被自动清除了。

Ⅵ SQL 将存储过程的数据插入临时表的语法

insert
*
#temp
select
A,B
from
(exec
存储过程XXXXX)
#temp
就是你要的临时表
直接读取几个列是不实际的,除非你修改存储过程

Ⅶ sql存储过程给两表插入数据的问题

给存储过程中加一些返回值或者把每一步结果插入到一个表中,然后在C#中执行一次看看记录
一步步调试

Ⅷ 怎么把下面的的sql语句查询出来的结果插入到一张新表中去 求大神帮忙

@SQL这个是你生成的sql语句,你在你的sql中增加一个into table,这样能不能满足你的需求呢?

关于select into语句我就不多说了,给你参考链接,你看看是不是你要的

http://www.w3school.com.cn/sql/sql_select_into.asp

还有就是,你也可以将insert 加到你的@SQL语句的前面直接执行,是不是也行呢?

比如:

现有的@SQL = 'SELECT NAME FROM TABLE UNION ALL SELECT ''ZHANGSNA'' '

你修改成@SQL2 = 'INSERT INTO TABLE2(NAME) ' + @SQL,这样是不是也行?

我们既然写存储过程了,而且目的也只是唯一的,那么我们就可以考虑直接将所有步骤放在存储过程中来处理,没必要再拿出来单独考虑怎么用

另外给你一个方式,你看看用得上用不上

--表

create table test

(

name varchar(50)

)

go


--动态sql添加数据

insert into test

exec('select 1')

go


--存储过程

create proc protest

as

declare @sql nvarchar(100) = ''

declare @s int = 1

while(@s < 5)

begin

select @sql += 'select ' + cast(@s as varchar(20)) + ' union all '

set @s += 1

end

select @sql += 'select 999'

exec(@sql)

go


--存储过程添加数据

insert into test

exec protest

Ⅸ sql server 如何利用 存储过程 建立一个新表,并向其中插入来自查询的数据

直接insert into ... select ... 就行了。
例如,从A、B查询结果,插入到C表:
insert into C(C1,C2)
select A.C1, B.C2 from A inner join B
on A.ID = B.ID

Ⅹ SQL存储过程中如何插入使用临时表

在存储过程中 是不可以创建临时表的...
建议使用表变量代替临时表进行操作 或者在存储过程外面建好临时表

祝你好运

热点内容
软件编程培训学院 发布:2025-01-11 04:00:18 浏览:845
路虎揽运配置怎么查询 发布:2025-01-11 03:42:51 浏览:393
仿站源码 发布:2025-01-11 03:42:05 浏览:39
腾讯的云服务器 发布:2025-01-11 03:40:47 浏览:569
百分之十的算法 发布:2025-01-11 03:34:30 浏览:642
java16进制tostring 发布:2025-01-11 03:24:21 浏览:721
mql4c语言 发布:2025-01-11 03:24:20 浏览:255
科尔访问苏联 发布:2025-01-11 03:15:47 浏览:331
python简单计算器 发布:2025-01-11 03:15:13 浏览:577
python绝对路径 发布:2025-01-11 03:10:55 浏览:759