oracle查询blob数据,C#查询Oracle clob blob数据
1.写SQL的话直接写就好了,注意不要出现count聚合函数等,一定要用的话,用count(*) over()
public static ListQueryDate(string date, string sn)
{
try
{
Listlist = new List(); //DataTable2 自定义类,存储DB返回数据
string sql = @" select HISDATA,STARTTIME,SN,DEL from app001.DataTable2 where 1=1";
if (!string.IsNullOrEmpty(date))
{
sql += " and STARTTIME = to_date('" + date + "','yyyy-mm-dd hh24:mi:ss') ";
}
if (!string.IsNullOrEmpty(sn))
{
sql += " and sn = '" + sn + "'";
}
using (IDataReader dr = ExecDataReader(sql))
{
while (dr.Read())
{
DataTable2 model = new DataTable2();
model.HISDATA = dr["HISDATA"].ToString();
model.STARTTIME = dr["STARTTIME"].ToString();
model.SN = dr["SN"].ToString();
model.DEL = dr["DEL"].ToString();
list.Add(model);
}
}
return list;
}
public static List QueryDate(string ID, string User_Name, string Model_Name, string SN, string Start_Time, string End_Time, string Page, string PageNums)
{
try
{
List list = new List();
OracleConnection conn = CreateConnection();
OracleCommand cmd = new OracleCommand(“APP022.APP_OXYGEN_PRO.PRO_QUERY_DATA”, conn);
cmd.CommandType = CommandType.StoredProcedure;
OracleParameter p1 = new OracleParameter(“ID_v”, OracleDbType.Varchar2, 100);
p1.Direction = System.Data.ParameterDirection.Input;
p1.Value = ID;
cmd.Parameters.Add(p1);
OracleParameter p2 = new OracleParameter(“User_Name_v”, OracleDbType.Varchar2, 100);
p2.Direction = System.Data.ParameterDirection.Input;
p2.Value = User_Name;
cmd.Parameters.Add(p2);
OracleParameter p3 = new OracleParameter(“Model_Name_v”, OracleDbType.Varchar2, 100);
p3.Direction = System.Data.ParameterDirection.Input;
p3.Value = Model_Name;
cmd.Parameters.Add(p3);
OracleParameter p4 = new OracleParameter(“SN_v”, OracleDbType.Varchar2, 100);
p4.Direction = System.Data.ParameterDirection.Input;
p4.Value = SN;
cmd.Parameters.Add(p4);
OracleParameter p5 = new OracleParameter("Start_Time_v", OracleDbType.Varchar2 , 100);
p5.Direction = System.Data.ParameterDirection.Input;
p5.Value = Start_Time;
cmd.Parameters.Add(p5);
OracleParameter p6 = new OracleParameter("End_Time_v", OracleDbType.Varchar2 , 100);
p6.Direction = System.Data.ParameterDirection.Input;
p6.Value = End_Time;
cmd.Parameters.Add(p6);
OracleParameter p7 = new OracleParameter("Page", OracleDbType.Varchar2, 100);
p7.Direction = System.Data.ParameterDirection.Input;
p7.Value = Page;
cmd.Parameters.Add(p7);
OracleParameter p8 = new OracleParameter("PageNums", OracleDbType.Varchar2, 100);
p8.Direction = System.Data.ParameterDirection.Input;
p8.Value = PageNums;
cmd.Parameters.Add(p8);
OracleParameter p9 = new OracleParameter("RET", OracleDbType.RefCursor);
p9.Direction = System.Data.ParameterDirection.Output;
cmd.Parameters.Add(p9);
// cmd.ExecuteNonQuery();
// OracleDataReader dr = (OracleDataReader)cmd.ExecuteScalar();
// OracleDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
// OracleDataReader dr = cmd.ExecuteReader();
// IDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
OracleDataAdapter da = new OracleDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
HEARTRATEDATA model = new HEARTRATEDATA(); //自定义类
model.ID = ds.Tables[0].Rows[i]["ID"].ToString();
model.User_Name = ds.Tables[0].Rows[i]["USER_NAME"].ToString();
model.Model_Name = ds.Tables[0].Rows[i]["Model_Name"].ToString();
model.SN = ds.Tables[0].Rows[i]["SN"].ToString();
model.Start_Time = ds.Tables[0].Rows[i]["START_TIME"].ToString();
model.End_Time = ds.Tables[0].Rows[i]["END_TIME"].ToString();
model.Test_Time = ds.Tables[0].Rows[i]["TEST_TIME"].ToString();
model.Heart_Rate = ds.Tables[0].Rows[i]["HEART_RATE"].ToString();
list.Add(model);
}
conn.Close();
return list;
}
catch (Exception e)
{
JUSTEC_LogHelper.LogHelper.WriteLog("Disposes错误提示:", "Disposes.QueryDate方法出错:" + e.ToString());
//throw;
return null;
}
}
也可以用OracleDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);接收存储过程返回结果集
while(dr.Read())
{
HEARTRATEDATA model = new HEARTRATEDATA();
model.ID = dr[“ID”].Tostring();
…
…
…
model.Heart_Rate = dr[“HEART_RATE”].Tostring();
list.Add(model);
}
查询不到结果的时候:
1.先看Oracle中 Clob字段类型是否已经保存了数据,用编辑器查
2.所需执行的SQL 在数据库中查出来的结果是否Clob字段有数据,要使用编辑器看
oracle查询blob数据,C#查询Oracle clob blob数据相关推荐
- oracle里面的long,long raw,raw,clob,blob区别
ORACLE LOB类型提供了BFILE.BLOB.CLOB.NCLOB让我们来存储最大尺寸有4G的无结构的数据块(例如:文本.图像.声音和视频等).并且它们右以以高效的.任意的和分段操作的方式存取数 ...
- oracle查询blob模糊搜索,BLOB字段模糊查询
1. BLOB字段模糊查询报错 blob字段直接用select * from table_name where column like'%%'查找的时候是不能实现的,主要是字段类型不符.不 ...
- oracle查询多张表交集,Oracle中对两个数据表交集的查询-专栏,ORACLE
oracle关系型管理系统是世界上流行的关系,它是一个极其强悍.灵活和复杂的系统,据说,在使用oracle时应有这样的观念,那就是在sql中近乎可以推动任何一种想法. 下面向你们介绍使用sql查两个o ...
- oracle 数据为当前月 查询结果为累计到当前月的数据_Oracle里的执行计划——使用explain plan命令...
事实上,Oracle优化的绝大多数可以归结为对SQL执行顺序的调整 1.什么是执行计划? 为了执行SQL语句,Oracle在内部必须实现很多步骤,这些步骤可以从数据库中物理检索数据行,或者用某种方式来 ...
- Oracle取排序的第五条数据,OVER(PARTITION BY)函数介绍 【oracle中按A分组按B排序,再取B中第一条数据的查询】...
目录 一.小案例: school表中有①id 序号②class 班级 ③score成绩 三个字段, 使用oracle实现按照班级分区,然后取班级中的第一名. 1.1测试数据如下: --创建学校表sch ...
- oracle dba_waiters中的lockid是什么,查询Oracle中的阻塞锁(以及阻塞在哪个数据上)的SQL...
查询Oracle中的阻塞锁(以及阻塞在哪个数据上)的SQL 数据库阻塞检查处理方法 当应用服务器发生阻塞时(特别是集群1),应先按下面方法检查数据库,以判明应用服务器阻塞是否由数据库阻塞引起. 如果 ...
- oracle分组查询取第一条数据,160804、oracle查询:取出每组中的第一条记录
oracle查询:取出每组中的第一条记录 按type字段分组,code排序,取出每组中的第一条记录 方法一: select type,min(code) from group_info group b ...
- oracle主表子表,oracle查询包含在子表中的主表数据
Oracle数据库,查询某表中包含在子表中的数据,子表中数据按特定条件来源于该父表,SQL命令如 select * from a_table a where a.commandId in (selec ...
- oracle数据查字符集,Oracle数据库字符集的查询
Oracle数据库字符集通俗的讲就是一个字节数据的相关的解释的符号集合,它具有 大小的差异,也有互相包容关系.Oracle是支持国家语言的相关体系结构,它允许你使用本地化语言来存储,处理,检索数据.它 ...
- oracle数据按条件清表,ociuldr v2.1 支持CLOB,BLOB数据类型
1.dcba的ociuldr工具 ociuldr这个工具初始是由dcba开发的,用的是v7版的oci函数库 目的是完成导出Oracle中的数据到文本文件这样的功能 这个工具流传的非常广 详细介绍可以参 ...
最新文章
- WPF学习拾遗(二)TextBlock换行
- mysql两列查询结果列拼接一个表输出_sql select语句,查询出两列结果拼接在一起...
- 后盾网lavarel视频项目---5、淘宝镜像cnpm的原理及如何使用
- 健身三大供能系统详解
- signature=78718ebfda6f8d955fae3e9c9c284f5d,SKI SAFETY BINDING WITH SWIVELLING SOLE PLATE
- Linux共享内存(二)
- NYOJ 682 初学者的烦恼
- kafka监控linux脚本,zabbix监控kafka
- dem聚类只能成为一类
- 【2019浙江省赛 - K 】Strings in the Pocket(马拉车,思维)
- leetcode 112 --- 二叉树根节点到叶子节点和为指定值的路径
- python socket udp_python网络-Socket之udp编程(24)
- opencv模糊图像变清晰_opencv-python 4.2图像模糊
- 火狐浏览器工具栏/折叠菜单怎么设置?火狐浏览器工具栏/折叠菜单定制教程
- 【自动控制原理】 时域分析法
- 第十二届蓝桥杯模拟赛Python组(第一期)
- jQuery 添加 input 表单提交 无数据
- Spring核心JAR包
- jpg/png格式的图片转换成eps格式
- java控制台输入做界面_Java控制台输入