亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Oracle long raw 類型字段讀取問題

系統(tǒng) 1956 0

Oracle long raw 類型字段讀取問題

【問題描述】
項(xiàng)目中用到了long raw 類型字段用于存放配置文件內(nèi)容,一直相安無事。突然有一天需要修改設(shè)計(jì),增加了一個字段"group_name",問題來了,讀取long raw字段總是提是“流已關(guān)閉”,經(jīng)過一番較量,才算解決,在此和大家分享一下。

  系統(tǒng)環(huán)境:windows 2003 enterprise/Oracle 9.2.1.0

原表結(jié)構(gòu):
create table bt_defination
(
id number(32) not null,
name varchar2(100) not null,
data long raw not null,
project_id number(32) not null,
primary key(id)
)

具體執(zhí)行步驟如下:
getConnection()....
createStatement()....
executeQuery("select * from bt_defination");
while(res.next())
{
res.getLong("id");
res.getString("name");
res.getBytes("data");
res.getLong("project_id");
}

執(zhí)行一切正常。

【下面即為修改后執(zhí)行出錯的情況】
修改后的表結(jié)構(gòu)(增加了一個字段group_name,擴(kuò)充為主鍵):

create table bt_defination
(
id number(32) not null,
name varchar2(100) not null,
data long raw not null,
group_name varchar(20) not null,
project_id number(32) not null,
primary key(id,name)
)

執(zhí)行步驟修改為:
具體執(zhí)行步驟如下:

getConnection()....
createStatement()....
executeQuery("select * from bt_defination");
while(res.next())
{
res.getLong("id");
res.getString("group_name");//new added
res.getString("name");
res.getBytes("data");
res.getLong("project_id");
}

結(jié)果顯示:SQLException("流已關(guān)閉")
分析修改前后,并無不妥之處,只是增加了一個字段而已。

【解決辦法】
修改sql語句-〉executeQuery("select id,group_name,name,data,project_id from bt_defination");
執(zhí)行一切正常!

【錯誤分析】
原來是select列表和res的get順序不一致(這種問題在不含二進(jìn)制字段的查詢中不存在)。
得出結(jié)論——對于包含二進(jìn)制字段的查詢操作,需要嚴(yán)格按照select列表的順序讀取,對于select * from ...的情況,默認(rèn)順序時間表語句的字段順序。
或者更嚴(yán)格的說,二進(jìn)制字段的數(shù)據(jù)可以提前讀取,但是絕對不能延后。舉個例子:

getConnection()....
createStatement()....
executeQuery("select id,group_name,name,data,project_id from bt_defination");
while(res.next())
{
res.getBytes("data");//up?
res.getLong("id");
res.getString("group_name");//new added
res.getString("name");
res.getLong("project_id");
}
data字段提前讀取也是完全可以的。

Oracle long raw 類型字段讀取問題


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: a级毛片免费完整视频 | 免费观看欧美一级特黄 | 亚洲精品成人久久久影院 | 欧美一区二区在线观看 | 国产一区二区在线不卡 | 国产特级毛片aaaaaa高清 | 精品国精品国产自在久国产应用 | 欧日韩一区二区三区 | 天天爽天天狼久久久综合 | 福利视频在线免费观看 | 99久久亚洲国产高清观看 | 久久中字 | 欧美精品国产日韩综合在线 | 亚洲欧美国产视频 | 国产欧美国产精品第二区 | 337p色噜噜| 精品视频一区二区三三区四区 | 大陆一级毛片免费视频观看i | 国产亚洲精品国产第一 | 国产农村妇女毛片精品久久 | 91精品国产综合久久福利 | 69美女福利视频在线观看 | 四虎永久精品免费网址大全 | 在线免费观看视频a | 日韩精品中文字幕在线 | 久久性生大片免费观看性 | 综合图区亚洲 | 国产xxx视频 | 亚洲欧美日韩中字综合 | 男人猛桶女人下面视频国产 | 欧美午夜视频一区二区三区 | 亚洲毛片在线看 | 黄 色 免费网 站 成 人 | 狠狠色官网在线 | 欧美精品国产 | 黄色男人的天堂 | 日本高清中文字幕一区二区三区 | 五月开心六月伊人色婷婷 | 中文字幕日韩在线观看 | 亚洲高清免费在线观看 | jizz成熟丰满老女人 |