1、编写一个存储过程。
2、需要定义如下参数:
@SOP AS CHAR(10), 操作内容
@ITYPE AS INT, 操作种类
@ISERNO AS INT, 序号
@SID AS INT, 传入的外部ID值
@LVAL AS CHAR(80) 值3、传入的值为电压值,范围0——30000
4、在电压值>=100时,视为精炼开始精炼,此时需要写入精炼开电时刻,如下
insert into wl_lf_gy(modified,val,ltime,ctype) values(1,0,convert(varchar(100),getdate(),20),@ISERNO*100+3)。
在电压<100时,视为精炼停止加热,此时需要写入精炼停电时刻,如下:
insert into wl_lf_gy(ltime,ctype,val,modified) values(convert(varchar(100),getdate(),20),@ISERNO*100+6,0,1)5、此过程为外部程序循环调用,每次调用1次,传入参数中定义的值。
6、可建立其它表或其他方式进行数据暂存。
2、需要定义如下参数:
@SOP AS CHAR(10), 操作内容
@ITYPE AS INT, 操作种类
@ISERNO AS INT, 序号
@SID AS INT, 传入的外部ID值
@LVAL AS CHAR(80) 值3、传入的值为电压值,范围0——30000
4、在电压值>=100时,视为精炼开始精炼,此时需要写入精炼开电时刻,如下
insert into wl_lf_gy(modified,val,ltime,ctype) values(1,0,convert(varchar(100),getdate(),20),@ISERNO*100+3)。
在电压<100时,视为精炼停止加热,此时需要写入精炼停电时刻,如下:
insert into wl_lf_gy(ltime,ctype,val,modified) values(convert(varchar(100),getdate(),20),@ISERNO*100+6,0,1)5、此过程为外部程序循环调用,每次调用1次,传入参数中定义的值。
6、可建立其它表或其他方式进行数据暂存。
解决方案 »
- 一个SQl不会写,总记录一百多条!我查询后就三万多条了!
- 地区代码对照表,哪位有呀
- 请高手进来,在SQLSERVER怎么求指数
- 从一个基本表得到一个视图,但视图中的某一个字段由基本表的三个字段的值中加“,”得来,请问如何建立该视图啊?
- 知道年份和月份,如何求出 1.这个月有多少天,2.这个月末是几号.前一月的月末是几号?后一月的月末是几号?
- 求一个sql语句的问题!!!!!!
- 员工离职后软件数据如何处理
- 【疑问】聚合函数和索引也有关系吗??【疑问】
- 怎样消除Sql server 2008 R2中sql文件中的红色波浪线
- 一个表中出现了完全相同的两行数据要想删除一行怎么做
- 一段SQL返回错误,不知道什么原因
- 这个该怎么写呢?
CREATE PROCEDURE PROC_MU(
@SOP AS CHAR(10), --操作内容
@ITYPE AS INT, --操作种类
@ISERNO AS INT, --序号
@SID AS INT, --传入的外部ID值
@LVAL AS CHAR(80) --值
)
AS
BEGIN
IF NOT @LVAL BETWEEN 0 AND 30000SELECT '电压值超出范围'
ELSEBEGIN
IF @LVAL>=100
insert into wl_lf_gy(modified,val,ltime,ctype) values(1,0,convert(varchar(100),getdate(),20),@ISERNO*100+3)
ELSE
insert into wl_lf_gy(ltime,ctype,val,modified) values(convert(varchar(100),getdate(),20),@ISERNO*100+6,0,1)
ENDEND
(
@SOP AS varCHAR(10),-- 操作内容
@ITYPE AS INT, --操作种类
@ISERNO AS INT, --序号
@SID AS INT, --传入的外部ID值
@LVAL AS varCHAR(80) --值
)
asset nocount on
set xact_abort onbegin tran
if @LVAL>=100
begin
insert into wl_lf_gy(modified,val,ltime,ctype) values(1,0,convert(varchar(100),getdate(),20),@ISERNO*100+3)
end
else
begin
insert into wl_lf_gy(ltime,ctype,val,modified) values(convert(varchar(100),getdate(),20),@ISERNO*100+6,0,1)
end
commit transet xact_abort off
set nocount off
@SOP CHAR(10),
@ITYPE INT,
@ISERNO INT,
@SID INT,
@LVAL CHAR(80)
as
begin
if @LVAL >= 100
insert into wl_lf_gy(modified,val,ltime,ctype) values(1,0,convert(varchar(19),getdate(),120),@ISERNO*100+3)
else
insert into wl_lf_gy(ltime,ctype,val,modified) values(convert(varchar(19),getdate(),120),@ISERNO*100+6,0,1)
end
@SOP CHAR(10),
@ITYPE INT,
@ISERNO INT,
@SID INT,
@LVAL CHAR(80),
@currentdate datetime
as
begin
if @LVAL >= 100
insert into wl_lf_gy(modified,val,ltime,ctype) values(1,0,convert(varchar(19),@currentdate,120),@ISERNO*100+3)
else
insert into wl_lf_gy(ltime,ctype,val,modified) values(convert(varchar(19),@currentdate,120),@ISERNO*100+6,0,1)
end
@SOP CHAR(10),
@ITYPE INT, // 把这些参数用一个字符串传进来,可以一次传近来100个以上的数据,而省去100次打开关闭数据库的过程,是不是效率更高
@ISERNO INT,
@SID INT,
@LVAL CHAR(80),
@currentdate datetime
as
begin
if @LVAL >= 100
insert into wl_lf_gy(modified,val,ltime,ctype) values(1,0,convert(varchar(19),@currentdate,120),@ISERNO*100+3)
else
insert into wl_lf_gy(ltime,ctype,val,modified) values(convert(varchar(19),@currentdate,120),@ISERNO*100+6,0,1)
end