直接将表名也改为varchar(50) 就行了
要不你就用预执行
if exists(select * from sysobjects where name='proc_select')
drop proc proc_select
go
create proc proc_select
@table varchar(50)
as
declare @sql varchar(8000)
set @sql='select * from '+@table
exec(@sql)
go
exec proc_select 'Types'
Ⅱ mysql存储过程实例(要求从一张表中的数据转存到另外一张表中,两张表中的字段基本一样)菜鸟求大神帮帮
createproceretest_sp()
begin
insert基高渗intotest001(id)
select念禅id
from搏脊test002;
end;
要这样?
Ⅲ 存储过程,转换成数据类型 int 时失败
可以定义一个游标
把字符串取出来,然后用分隔扒悄符拆分
然后把每个薯罩数值字符串分别转换成数此闹int
再相加
Ⅳ 如何用存储过程实现将同一数据库中一个表的部分数据导入另一表中
可以将一个表中的部分数据先查询出现存到一个临时表中,然后从临时表中一条一条的取出来,添加到另一张表中,
也可以不用临时表,直接将查询出来的数据添加到另一张表中
Ⅳ 如何在sql server存储过程中转化数据类型
不一定非要在存储过程中转换,用普通的sql语句就可以,一般用cast函数。
测试方法:
创建表及插入数据:
create知答tabletest
(idint,
starttimevarchar(20));
insertintotestvalues(1,'2015-07-11');
将starttime字段转化为datetime类型:
selectcast(starttimeasdatetime)fromtest;
结果如图燃辩,这皮猛缺时,starttime就转成了datetime类型:
Ⅵ sqlserver 存储过程 将左边数据格式转成右边数据格式存放
数据如下:
Ⅶ SQL server 存储过程varchar到int类型转换
/*
存储过程的return只能返回int类型的数据,并且只这样接收返回值的
declare@Aint
Exec@A=P_判断是否闰年
select@A
*/
--你可以改成这样
alterprocP_判断是否闰年
as
begin
declare@时间int
set@时间=datepart(year,'2000-02-01')
selectCASEWHEN(@时间%4=0AND@时间%100<>0)or(@时间%400=0)then'是闰年'
else'不是闰年'
end
end
--也可以这样
alterprocP_判断是否闰年(@RstVarchar(10)output)
as
begin
declare@时间int
set@时间=datepart(year,'2000-02-01')
Set@Rst=CASEWHEN(@时间%4=0AND@时间%100<>0)or(@时间%400=0)then'是闰年'
else'不是闰年'
end
end
/*
declare@Avarchar(10)
ExecP_判断是否闰年@Aoutput
select@A
*/
Ⅷ oracle如何用存储过程完成迁移数据
直接新建一个Job,扒神敏里面些匿名PLSQL程瞎滚序块春枝即可:
BEGIN
INSERT INTO B
SELECT A.ID, A.ANAME, A,ATYPE
FROM A
WHERE NOT EXISTS(
SELECT 1 FROM B WHERE B.BID = A.AID AND B.BNAME=A.ANAME);
END;
/
Ⅸ sql server编写一个存储过程,完成两个变量数据的交换。
--创建存储过程
createproceretest(@avarchar(10)output,@bvarchar(10)output)
as
begin
declare@cvarchar(10)
set@c=@a
set@a=厅铅@b
set@b=@c
end
go
--测试指御
declare@avarchar(10)
declare@bvarchar(10)
set@a='a'
set@b=扮逗好'b'
exectest@aoutput,@boutput
--取结果查看
select@aa,@bb
Ⅹ mysql利用存储过程实现批量处理数据的简单操作
-- 判断存储test是否存在,如果存在谈谨则删除
DROP PROCEDURE IF EXISTS test;
-- 创建存储过程
CREATE PROCEDURE test()
BEGIN
-- 声明循环变量int型 i
DECLARE i INT DEFAULT 1;
-- 设置i=0
set i=0;
-- 循环100次
while i<100 do
-- if判断i为偶数
if i%2 = 0 THEN
-- 要实现的操作 CONCAT(str1,str2,...) concat函数用于拼接子串和数字类型
INSERT into user(name,addr) VALUES(CONCAT('test',i,'ss'),'addr');
end if;
-- i自洞拦增含颤基
set i=i+1;
END WHILE;
END;
-- 调用存储过程
CALL test()