社区
MS-SQL Server
帖子详情
有关OCI的简单问题,三日内给分!
ysli
2001-09-03 11:54:23
我们准备在数据库后台用OCI编程,因对OCI并不熟悉,所以准备做法如下:
1、在sql中(注意不是在C语言中)定义一个TMP*n[m]数组,n为字段数,m为记录数
2、在sql中用cursor完成多个纪录的读取,并放入TMP数组中
然后如何将这个数组的内容取出(即取到C语言的数组变量中)呢??我们不能用oracle的编程工具,只能使用OCI方式
或是哪位有其他用OCI读出多条记录的办法?多多谢谢了!!!
...全文
233
18
打赏
收藏
有关OCI的简单问题,三日内给分!
我们准备在数据库后台用OCI编程,因对OCI并不熟悉,所以准备做法如下: 1、在sql中(注意不是在C语言中)定义一个TMP*n[m]数组,n为字段数,m为记录数 2、在sql中用cursor完成多个纪录的读取,并放入TMP数组中 然后如何将这个数组的内容取出(即取到C语言的数组变量中)呢??我们不能用oracle的编程工具,只能使用OCI方式 或是哪位有其他用OCI读出多条记录的办法?多多谢谢了!!!
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
flylotus
2001-09-05
打赏
举报
回复
你可以先用pro*c,然后查看编译出的c代码
ysli
2001-09-05
打赏
举报
回复
多谢各位!今天下班时结贴,各位还有新招请再赐教!
xzou
2001-09-05
打赏
举报
回复
那只能说明你没有用到oci的函数,
试着定义OCIClobLocator *a_clob;
这个应该是oci定义的类型吧
ysli
2001-09-05
打赏
举报
回复
是么,我们这样试过,但转换后的C代码好像没有OCI函数呢
xzou
2001-09-04
打赏
举报
回复
to aniugecn()
你的数组定义的应该是个结构数组把,要与我取得的结果集记录类型相对应把,这个怎么简单呢?
比如:我在sql里 是为了取得 select id,name,age,errmag from mytable的结果集
其中,id number(10) name char(20) age int errmsg varchar2(30)
你在c里面的a数组该怎么定义,如何确定我的返回记录数?难道还要先select count(*) 先?
如果我想取得所有的值呢?
aniugecn
2001-09-04
打赏
举报
回复
其实挺容易的在c中定义一个数组a[100],在调用OCIDefineByPos时指定此数组为输出变量
而后在调用OCIStmtFetch时指定取100条那么就可以将从当前位置开始的100条记录取
到数组a中。
aniugecn
2001-09-04
打赏
举报
回复
不好意思,手头没有这方面的例子,你可以到oracle公司的网站上下载oci的开发指南,那上面
有详细的介绍
qianby
2001-09-04
打赏
举报
回复
up
xzou
2001-09-04
打赏
举报
回复
to aniugecn():
能给个这方面的小例程吗?谢谢,或是什么地方有着方面的资料也行
aniugecn
2001-09-04
打赏
举报
回复
to:xzou(缺齿小狼)当数据从ORACLE中取到C中时自动进行数据转换,当然不可能一次把所有的
记录都取出的,也是要多次取直至取完,只不过每次取的记录多而已
tigerwood12345
2001-09-03
打赏
举报
回复
关注,帮你UP
ysli
2001-09-03
打赏
举报
回复
to haihong:我们看过一些oci的例子,没有发现要找的东东,555...偶们会继续看的。。。
to xzou:是考虑过‘只好在程序里定义结构,在程序里一条一条的得到结果集结果。’,但总感觉太。。。麻烦了些
to aniugecn:就是想知道如何取呀?!
各位请再指教!
ysli
2001-09-03
打赏
举报
回复
我们看过一些oci的例子,没有发现要找的东东,555...偶们会继续看的。。。
to xzou:是考虑‘只好在程序里定义结构,在程序里一条一条的得到结果集结果。’,但总感觉太。。。麻烦了些
to aniugecn:就是想知道如何取呀?!
各位请再指教!
aniugecn
2001-09-03
打赏
举报
回复
在oci中可以一次将一批结果取到c语言的数组中的
xzou
2001-09-03
打赏
举报
回复
这些东西主要要考虑sql类型与C语言类型的一一对应,按你说的,必须要有一种结构进行二者的传递,可以考虑用存储过程返回游标,程序里取游标返回的数据,或者只好在程序里定义结构,在程序里一条一条的得到结果集结果。
haihong
2001-09-03
打赏
举报
回复
你是想让我教你oci怎么用吗?很多的内容啊,你应该去oracle 目录下找几个demo 的例子看看
cdemo81是最简单的例子了
ysli
2001-09-03
打赏
举报
回复
据我理解pro*C最总也是用的OCI接口,是不?那么如果用pro*C可以,用OCI应该也可以的,请各位继续赐教
dark_thor
2001-09-03
打赏
举报
回复
为什么不用ProC?
Oracle APEX零代码集成
OCI
AI构建企业级智能应用
低代码平台与生成式AI的融合正成为企业智能化落地的关键路径。其核心原理在于将业务数据、表单逻辑与AI服务深度耦合,规避传统方案中数据出域、Prompt手工拼接、向量库独立运维等工程断层。技术价值体现在安全合规(私网调用、数据不出云)、开发提效(表单即Prompt、报表即RAG)和生产就绪(审计日志全链路、熔断机制内置)。典型应用场景包括合同智能比对、采购单据合规校验、销售邮件工单生成等需要结构化数据驱动AI决策的业务闭环。本文以Oracle APEX+
OCI
Generative AI免费层为实践载体,详解
Surpriver核心原理解析:隔离森林算法在股票预测中的应用
Surpriver是一款基于机器学习和异常检测的股票预测工具,它通过先进的隔离森林算法识别即将大幅波动的股票。🚀 这个开源项目利用价格和成交量的异常模式,帮助投资者在股票大幅波动前发现潜在机会。本文将深入解析Surpriver如何运用隔离森林算法进行股票异常检测,以及这一技术在实际交易中的应用价值。 ## 🔍 什么是隔离森林算法? 隔离森林(Isolation Forest)是一种高效的异
Docker 27.0.3紧急补丁已推送!低代码SaaS厂商需在72小时内完成容器镜像签名与SBOM生成
Docker 27低代码应用容器化迎来安全强监管:SaaS厂商须72小时内完成镜像签名与SBOM生成。适用于低代码平台快速交付场景,保障合规性与供应链安全。自动化工具链支持一键集成,提升发布可信度。值得收藏
如何成功提交你的第一个nerdctl社区PR:完整指南与经验
分
享
作为containerd的Docker兼容CLI工具,nerdctl凭借对Compose、Rootless、eStargz等特性的支持,已成为容器开发者的重要工具。本文将
分
享首次为这个开源项目贡献代码的完整流程,从环境搭建到PR合入,助你轻松迈出开源贡献第一步。 ## 1. 准备工作:了解项目与环境配置 在开始贡献前,建议先通过官方文档熟悉项目架构。核心代码位于[cmd/nerdctl/](h
php rc5,PHP 7.2.0 RC5 发布,bug 修复版本
PHP 7.2.0 RC5发布了。PHP(PHP:HypertextPreprocessor)是一种在电脑上执行的脚本语言,主要是用途在于处理动态网页,也包含了命令列执行接口(command line interface),或者产生图形使用者接口(GUI)程式。改进日志如下:26 Oct 2017, PHP 7.2.0RC5- Core:. Fixed bug #75368 (mmap/munma...
MS-SQL Server
34,876
社区成员
254,635
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章