初折腾Oracle问题小记二
Oracle 小记 折腾 问题
2023-09-11 14:21:18 时间
为了CYQ.Data 框架 CYQ.Data 轻量数据层之路 框架开源系列 索引 引入支持Oralce,继续努力着。
今天花了半天,总算完成了添加/更新/删除操作。
begin
Insert Users(id,username,url) values(1,路过秋天,http://cyq1162.cnblogs.com);
update ......;
end;
create or replace package MyPackage as
type cursorResult is ref cursor;
procedure SelectBase(pageIndex int,pageSize int,tableName varchar2,whereStr varchar2,myResult out cursorResult);
end MyPackage;
procedure SelectBase(pageIndex int,pageSize int,tableName varchar2,whereStr varchar2,myResult out cursorResult)
is
mySql varchar2(2000);
begin
mySql=select * from ||tableName;
open myResult for mySql;
end SelectBase;
end MyPackage;
ORA-04063: package body "SA.MYPACKAGE" has errors
ORA-06508: PL/SQL: could not find program unit being called
ORA-06512: at line 1
【Oracle】安装Oracle Linux操作步骤 Oracle Linux是Linux发行版本之一,全称为Oracle Enterprise Linux,简称OEL,是Oracle公司在2006年初发布第一个版本,以对Oracle软件和硬件支持较好见长。 Oracle以Red Hat Linux做为起始,移除了Red Hat的商标,然后加入了Linux的错误修正。Oracle Enterprise Linux现在是,并旨在保持为,与Red Hat Enterprise Linux完全兼容。
在linux服务器上,需要使用oracle数据库,那么就需要安装oracle数据库服务器,然后进行数据库软件的使用。
今天花了半天,总算完成了添加/更新/删除操作。
继续记录今天折腾Oralce遇到的问题:
1:参数化传参,默认加了个返回值ReturnValue参数,引发异常--参数个数配对问题。
2:参数的数据类型设置大小设置不能为-1,不然会引发值太大,无法绑定的引异常--参数大小需要指定。
3:参数化语句如:Insert Users(ID,UserName) values(AutoID.nextval,:UserName)--参数用":"
4:参数添加可以加前缀或不加前缀如:
com.Parameters.Add(":UserName",objValue) 或
com.Parameters.Add("UserName",objValue);
5:多语句执行,语法如下:begin 语句1;语句2;end;
示例:
![复制代码](http://common.cnblogs.com/images/copycode.gif)
Insert Users(id,username,url) values(1,路过秋天,http://cyq1162.cnblogs.com);
update ......;
end;
![复制代码](http://common.cnblogs.com/images/copycode.gif)
说明:
只能批量执行insert/update/delete/select ..into等不返回结果的语句。
继续补充
6:写了一个测试的存储过程如下:
![复制代码](http://common.cnblogs.com/images/copycode.gif)
![ExpandedBlockStart.gif](http://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif)
type cursorResult is ref cursor;
procedure SelectBase(pageIndex int,pageSize int,tableName varchar2,whereStr varchar2,myResult out cursorResult);
end MyPackage;
procedure SelectBase(pageIndex int,pageSize int,tableName varchar2,whereStr varchar2,myResult out cursorResult)
is
mySql varchar2(2000);
begin
mySql=select * from ||tableName;
open myResult for mySql;
end SelectBase;
end MyPackage;
ORA-04063: package body "SA.MYPACKAGE" has errors
ORA-06508: PL/SQL: could not find program unit being called
ORA-06512: at line 1
【Oracle】安装Oracle Linux操作步骤 Oracle Linux是Linux发行版本之一,全称为Oracle Enterprise Linux,简称OEL,是Oracle公司在2006年初发布第一个版本,以对Oracle软件和硬件支持较好见长。 Oracle以Red Hat Linux做为起始,移除了Red Hat的商标,然后加入了Linux的错误修正。Oracle Enterprise Linux现在是,并旨在保持为,与Red Hat Enterprise Linux完全兼容。
在linux服务器上,需要使用oracle数据库,那么就需要安装oracle数据库服务器,然后进行数据库软件的使用。
相关文章
- Oracle数据库导出整个Oracle数据库和导入整个oracle数据库命令
- Oracle对没有主键的表分页
- 静默安装oracle 11g,环境预检查时报错,SEVERE: [FATAL] PRVF-0002 : 无法检索本地节点名
- oracle导入命令,记录一下 数据库日志太大,清理日志文件
- Oracle数据库:oracle组函数,聚合函数,多行函数,avg,sum,min,max,count,group by,having
- Oracle数据库:oracle多表查询,等值连接,非等值连接,自连接的sql语句和规则
- 搜狐畅游高级DBA:Oracle运维中的实战经验和应对技巧
- oracle函数 mod(x,y)
- 转如何升级oracle版本?(11.2.0.1至11.2.0.4)
- Oracle Tuxedo工作站客户端与服务端的样例程序
- 关于炉石传说的Oracle数据库故障不要以为你也可以幸免
- oracle autotrace使用
- Oracle 热备份
- [Oracle工程师手记] 记一次 transport lag 的解析
- [Oracle][DataGuard]Standby数据库文件有损坏时的处理方法
- 【从翻译mos文章】在oracle db 11gR2版本号被启用 Oracle NUMA 支持
- Oracle问题小记五:服务启动-索引-子查询-分页存储过程