使用EnterpriseLibrary插入Oracle CLOB数据

郁闷了很久,始终无法插入Oracle CLOB数据。网上搜索到的文章,多半是过时的方式,复杂容易出错。
偶然看到 Microsoft.Practices.EnterpriseLibrary.Data.Oracle 心中窃喜,EnterpriseLibrary想的挺周到,实现了Oracle的操作方式。继续寻找,看到了下面一个方法
AddParameter(OracleCommand command,  string  name, OracleType oracleType,  int  size, ParameterDirection direction,  bool  nullable,  byte  precision,  byte  scale,  string  sourceColumn, DataRowVersion sourceVersion,  object  value);
一看,有OracleType,这下好了,可以用OracleType.Clob了。
下面是实现的代码
             // 连接数据库
            OracleDatabase db  =  (OracleDatabase)DatabaseFactory.CreateDatabase(Constant.DBNAME);
            
// 插入信息的SQL。content的类型是CLOB
             string  insertSql  =   " INSERT INTO article(content) VALUES (:content) " ;
            
// 获得DbCommand对象
            OracleCommand dbCommand  =  (OracleCommand)db.GetSqlStringCommand(insertSql);

            
// 为SQL中的变量赋值
             db.AddParameter(dbCommand,  " content " OracleType.Clob, strContent.Length, ParameterDirection.Input,  false 0 0 "" , DataRowVersion.Default, strContent);   /* 内容 */
             //执行操作
          
int  affectRows  =  db.ExecuteNonQuery(dbCommand);

你可能感兴趣的:(使用EnterpriseLibrary插入Oracle CLOB数据)