当前位置:首页 » 编程语言 » sql转换oracle

sql转换oracle

发布时间: 2023-08-23 00:02:23

sql SERVER 存储过程,转换成ORACLE存储过程

你这个过程其实就是分页查询用户信息是吧

--利用游标返回结果集
CREATEORREPLACEPACKAGEpkg_queryASTYPEcur_queryISREFCURSOR;
ENDpkg_query;


CREATEORREPLACEPROCEDUREUP_UserInfo_List_select
(
WhereSqlinvarchar2,--查询条件
StartIndexinNumber,--当前页
EndIndexinNumber,--每页显示记录条数
RecordCountoutNumber,
v_curoutSYS_REFCURSOR)--返回的结果集
IS
v_sqlVARCHAR2(1000):='';--sql语句
BEGIN
--查总记录数
v_sql:='SELECTTO_NUMBER(COUNT(*))FROMUserInfoWHERE1=1';
IFWhereSqlISNOTNULLorWhereSql<>''THEN
v_sql:=v_sql||WhereSql;
ENDIF;
EXECUTEIMMEDIATEv_sqlINTORecordCount;

--实现分页查询
v_sql:='SELECT*FROM(SELECTA.*,rownumrFROM(SELECTUserId,UserName,RoleId,IsLock,DescfromUserInfo';
IFWhereSqlISNOTNULLorWhereSql<>''THEN
v_sql:=v_sql||'WHERE1=1'||WhereSql||'ORDERBYUserId';
ENDIF;

v_sql:=v_sql||')AWHERErownum<='||EndIndex||')BWHEREr>='||StartIndex;
DBMS_OUTPUT.put_line(v_sql);

OPENv_curFORv_sql;

ENDUP_UserInfo_List_select;

--执行,plsql这里是看不到结果集,找到这个过程点测试,才能看到。当然你在程序里使用也是能返回的。
declare
RecordCountnumber:=0;
v_curpkg_query.cur_query;
begin
UP_UserInfo_List_select('',1,10,RecordCount,v_cur);
DBMS_OUTPUT.put_line(RecordCount);
end;

❷ 如何将一个 mysql 风格的 sql 脚本转换为 oracle 导入的 sql 脚本

用navicat 9.0
1、先新建一个mysql的数据库,然后把这个脚本导入进去(肯定会成功的)
2、在新建导入的数据库上,右击,数据传输,右边的目标选择文件,然后右边第二个选择sql格式,选择oracle就行了

❸ sql语句与oracle语句的转换

select table_name from dba_tables where table_name='TMP' 注意最后where中的表是大写的

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:705
制作脚本网站 发布:2025-10-20 08:17:34 浏览:969
python中的init方法 发布:2025-10-20 08:17:33 浏览:677
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:830
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:737
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1076
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:308
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:188
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:875
python股票数据获取 发布:2025-10-20 07:39:44 浏览:829