本文内容
- OracleLob 操作 CLOB 字段
- OracleLob 操作 BLOB 字段
OracleLob 操作 CLOB 字段
向 Oracle Clob 字段写入数据
;
string id = string.Empty;
OracleConnection conn = new OracleConnection(connStr);
OracleCommand cmd = conn.CreateCommand();
// 字符串
id = Guid.NewGuid().ToString();
StringBuilder data = new StringBuilder();
for (int i = 1; i <= 100; i++) data.Append("a");
try
{
conn.Open();
//cmd.CommandText = "DROP TABLE mylobtable";
//cmd.CommandType = CommandType.Text;
//cmd.ExecuteNonQuery();
//Response.Write("删除表'mylobtable'成功.<br />");
cmd.CommandText = "CREATE TABLE mylobtable (a varchar2(36), b clob,c blob)";
cmd.CommandType = CommandType.Text;
cmd.ExecuteNonQuery();
Response.Write("创建表 'mylobtable' 成功.<br />");
// 一般方式
cmd.CommandText = "INSERT INTO mylobtable(a,b) VALUES('" + id + "','" + data.ToString() + "')";
cmd.CommandType = CommandType.Text;
cmd.ExecuteNonQuery();
Response.Write("添加成功.<br />");
// 使用 OracleParameter OracleType.Clob
cmd.CommandText = "INSERT INTO mylobtable(a,b) VALUES('" + id + "'," + ":data)";
cmd.CommandType = CommandType.Text;
cmd.Parameters.Clear();
OracleParameter paraClob = new OracleParameter("data", OracleType.Clob);
paraClob.Value = data.ToString();
cmd.Parameters.Add(paraClob);
cmd.ExecuteNonQuery();
Response.Write("添加成功.<br />");
// 使用 OracleParameter OracleType.NVarChar
cmd.CommandText = "INSERT INTO mylobtable(a,b) VALUES('" + id + "'," + ":data)";
cmd.CommandType = CommandType.Text;
cmd.Parameters.Clear();
OracleParameter paraNVarChar = new OracleParameter("data", OracleType.NVarChar);
paraNVarChar.Value = data.ToString();
cmd.Parameters.Add(paraNVarChar);
cmd.ExecuteNonQuery();
Response.Write("添加成功.<br />");
}
catch (Exception ex)
{
Response.Write("失败." + ex);
}
finally
{
cmd.Dispose();
conn.Close();
conn.Dispose();
}