当前位置:首页 » 编程语言 » 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中的表是大写的

热点内容
混合存储提供商 发布:2025-08-23 00:06:08 浏览:429
行锁算法 发布:2025-08-23 00:05:05 浏览:897
手机编程苹果 发布:2025-08-23 00:02:41 浏览:281
脚本会被杀毒软件 发布:2025-08-22 23:56:03 浏览:134
gta5车文件夹 发布:2025-08-22 23:47:58 浏览:178
编译标准 发布:2025-08-22 23:45:59 浏览:167
公司有一个服务器怎么卖 发布:2025-08-22 23:10:09 浏览:900
iapp各种功能源码 发布:2025-08-22 23:03:30 浏览:817
linux协议栈pdf 发布:2025-08-22 22:54:35 浏览:530
幼儿编程班 发布:2025-08-22 22:45:21 浏览:290