折雨的天空

新浪微薄腾讯微薄

最新碎语:最近霉到了住。哎。。。

您的位置:折雨的天空 >php开发> 续写PHP读写Oracle的clob及blob字段

续写PHP读写Oracle的clob及blob字段

上次遇到过这个问题,读写方式不一样,当时找了很多资料。

这次找到上次写的代码,本身没有什么问题,但是当时只读写了一个字段,这里续写一下遇到多个字段的写法


官方文档地址:http://www.oracle.com/technetwork/articles/fuecks-lobs-095315.html


但是里面没有写入和更新多个字段的方式


写入多个字段,只与returning的语法有关。


因此,可以搜索一下returning在oracle中的用法。


这里贴一点代码:


insert into clinical_help_articles(uuid,title,classify_id,is_public,author,author_ip,created,updated,attachment,content,test) values('A_584a2b366a8878.40825359','dsdf','C_584a07be8a2e25.06636407','1','4ea520babf4ea','','1481255734','1481255734','',EMPTY_CLOB(),EMPTY_BLOB()) RETURNING content,test INTO :content_blob,:test_blob

下面是更新的。


update clinical_help_articles set title='dsdf',classify_id='C_584a07be8a2e25.06636407',updated='1481255782',attachment='',content=EMPTY_CLOB(),test=EMPTY_BLOB() where (uuid='A_584a2b366a8878.40825359') RETURNING content,test INTO :content_blob,:test_blob

由于php端是写在一个公共类里的,这里就不贴出来了。方法同官方文档,只是需要构造一下多个clob对象。


另外就是读取的时候,如果要同时支持普通字段和clob及blob字段,在PHP手册里,有例子,可能我们没太注意。


oci_fetch_array($this->log_dao_rs,OCI_RETURN_NULLS+OCI_RETURN_LOBS);

这个函数第二个参数支持上面这种写法,用上就可以同时支持普通字段及clob等字段了。

------------正 文 已 结 束, 感 谢 您 的 阅 读 (折雨的天空)--------------------

转载请注明本文标题和链接:《续写PHP读写Oracle的clob及blob字段

奖励一下

取消

分享不易,烦请有多多打赏,如您也困难,点击右边关闭即可!

扫码支持
扫码打赏,5元,10元,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

-秒后自动关闭,如已打赏,或者不愿打赏,请点击右上角关闭图标。

发表评论

路人甲 表情
看不清楚?点图切换