亚洲综合社区欧美综合色-欧美逼逼一区二区三区-国产老熟女高潮精品网站-国产日韩最新视频在线看

始創(chuàng)于2000年 股票代碼:831685
咨詢熱線:0371-60135900 注冊(cè)有禮 登錄
  • 掛牌上市企業(yè)
  • 60秒人工響應(yīng)
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補(bǔ)償
全部產(chǎn)品
您的位置: 網(wǎng)站首頁(yè) > 幫助中心>文章內(nèi)容

Oracle數(shù)據(jù)庫(kù)Clob字段的更新操作

發(fā)布時(shí)間:  2012/9/20 16:41:57

OracleLob 與 OracleBFile 的區(qū)別在于前者的數(shù)據(jù)存儲(chǔ)在服務(wù)器上而不是存儲(chǔ)在操作系統(tǒng)的物理文件中。它也可以是一個(gè)讀寫(xiě)對(duì)象,這一點(diǎn)與 OracleBFile 不同(后者始終為只讀)。

  若要獲取 OracleLob 對(duì)象,請(qǐng)調(diào)用 GetOracleLob 方法。

  可以使用如下格式構(gòu)造值為 NULL 的 OracleLob:
  OracleLob myLob = OracleLob.Null;-
 

  測(cè)試從服務(wù)器返回的 LOB 是否為 NULL
  if( myLob == OracleLob.Null)
  或者
  if( myLob.Value == DBNull.Value )
  NULL LOB 的行為與零字節(jié) LOB 的相似之處在于,Read 成功并始終返回零字節(jié)。
  選擇一個(gè)包含空值的 LOB 列可返回 Null。
  必須在獲取臨時(shí) LOB 之前開(kāi)始事務(wù)。否則,OracleDataReader 將不能獲取后面的數(shù)據(jù)。

  1using System;
  2using System.Data;
  3using System.Data.OracleClient;
  4using System.IO;
  5
  6namespace ConnectOracle
  7{
  8    /// <summary>
  9    /// Oracle數(shù)據(jù)庫(kù)Clob字段的更新操作
  10    /// </summary>
  11    public class ConnectionOracle
  12    {
  13
  14        public void UpdateClogData()
  15        {
  16
  17            //
  18            // 操作對(duì)象
  19            //
  20             OracleLob lob;
  21             OracleTransaction txn = null;
  22             OracleConnection conn = null;
  23             OracleCommand cmd = null;
  24             OracleDataReader dr = null;
  25            string strSql = string.Empty;
  26            string content = string.Empty;
  27            string CONNECTSTRING = "User ID=xxxx; Password=xxxx; Data Source=cmsdb_192.168.0.1";
  28
  29            try
  30            {
  31                 conn = new OracleConnection(CONNECTSTRING);
  32                 conn.Open();
  33                 txn = conn.BeginTransaction();
  34                 cmd = new OracleCommand(strSql,conn, txn);
  35
  36                //
  37                // 注意這里的 FOR UPDATE 進(jìn)行記錄鎖定
  38                //
  39                 cmd.CommandText = "SELECT content FROM mytable FOR UPDATE";
  40                 dr = cmd.ExecuteReader();
  41                 dr.Read();
  42
  43                while(dr.Read())
  44                {
  45                     lob = dr.GetOracleLob(0);
  46                    if(lob!=OracleLob.Null)
  47                    {
  48                         content = lob.Value.ToString();
  49
  50                        //
  51                        // 進(jìn)行修改操作
  52                        //
  53                         content = "這是新的數(shù)據(jù)";
  54
  55                        //
  56                        // 將新的數(shù)據(jù)值轉(zhuǎn)換成byte[]
  57                        //
  58                        byte[] buffer = System.Text.Encoding.Unicode.GetBytes(content);
  59
  60                        //
  61                        // 寫(xiě)回lob對(duì)象
  62                        //
  63                         lob.Write(buffer, 0, buffer.Length);
  64                     }
  65
  66                 }
  67                // 提交操作
  68                 txn.Commit();
  69                 Console.WriteLine("===============Success================");
  70             }
  71            catch(Exception ex)
  72            {
  73                 Console.WriteLine("Error: {0}", ex.ToString());
  74             }
  75            finally
  76            {
  77                 dr.Close();
  78                 conn.Close();
  79                 cmd.Dispose();
  80             }
  81         }
  82
  83     }
  84}


 


本文出自:億恩科技【1tcdy.com】

服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經(jīng)營(yíng)性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經(jīng)營(yíng)性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經(jīng)營(yíng)性ICP/ISP證:贛B2-20080012
  • 服務(wù)器/云主機(jī) 24小時(shí)售后服務(wù)電話:0371-60135900
  • 虛擬主機(jī)/智能建站 24小時(shí)售后服務(wù)電話:0371-60135900
  • 專(zhuān)注服務(wù)器托管17年
    掃掃關(guān)注-微信公眾號(hào)
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權(quán)所有  地址:鄭州市高新區(qū)翠竹街1號(hào)總部企業(yè)基地億恩大廈  法律顧問(wèn):河南亞太人律師事務(wù)所郝建鋒、杜慧月律師   京公網(wǎng)安備41019702002023號(hào)
      0
     
     
     
     

    0371-60135900
    7*24小時(shí)客服服務(wù)熱線