Oracle存储过程转成Sqlserver存储过程
Oracle存储过程转成Sqlserver存储过程
1.日期转换
Oracle: TO_NUMBER(TO_CHAR(SYSDATE, 'YYYYMMDD'))
SqlServer:CAST(CONVERT(CHAR(8),GETDATE(), 112) AS INT)
注:其中‘YYYYMMDD’格式 对应112
2.ROWID转换
Oracle: ROWID
SqlServer: PRIMARY KEY(表主键)
3.ROWNUM
Oracle: ROWNUM = 1
SqlServer: Top 1
注:一般Select中的这个可以直接替换,但是在Update中就比较难了,如下:
Oracle: UPDATE ITEM_MST SET
HISD_FLAG = 1
WHERE
ROWID = C2.ROWID;
Sqlserver : UPDATE ITEM_MST SET
HISD_FLAG = 1 --AND ROWNUM = 1 ---KEY
WHERE ITEM_CD IN --=
(SELECT TOP 1 ITEM_CD from ITEM_MST WHERE SALES_NO = @C1_ITEM_NAME )
也就是说,可以利用该行中其他的已知信息获取该项数据。
。。。。。。
(未完,待续。)
相关文档:
关键字
概念
类型
异常处理
一 概念
游标是SQL的一个内存工作区,由系统或用户以变量的形式定义。游标的作用就是用于临时存储从数据库中提取的数据块。在某些情况下,需要把数据从存放在磁盘的表中调到计算机内存中进行处理,最后将处理结果显示出来或最 ......
alter table Tablename add(column1 varchar2(20),column2 number(7,2)...)
比如:
已有表A,结构如下
字段名 类型
------------ -------------
A VARCHAR2(10)
B NUMBER
现在要增加 ......
Oracle数据库的备份分为一致性和非一致性两种。
一致性备份,就是数据库在关闭的状态下或者mount状态下进行的备份。这时候由于数据库没有打开,没有数据处理发生,控制文件、数据文件和日志文件中的scn保持一致。所以成为一致性备份。
不一致性备份,就是数据库在open状态下进行的备份,这时候由于数据文件和控制文件以及 ......
sqlserver:update Table_A set Table_A.col1 = (select Table_B.col1 from Table_B where Table_A.col2 = Table_B.col2)
Access: UPDATE Table_ A, Table_B SET Table_ A.字段2 = Table_ B.字段2
WHERE Table_ A.编号=Table_ A.编号;
自己记下,提醒自己 ......