.net读取oracle 数据库long类型数据为空 110
采用的是OracleDataAdapter,sqlDA.Fill(dataSet,"mapTable");方式存入的值存入的datasetLONG类型值为空,其他值一切正...
采用的是 OracleDataAdapter ,
sqlDA.Fill(dataSet,"mapTable"); 方式存入的值 存入的dataset LONG类型值为空,其他值一切正常。
不采用OracleDataAdapter 读取值则能正常,求高手解答。
上面是调用存储过程方法
下面是读取数据展示:
下面是存储过程展示: 展开
sqlDA.Fill(dataSet,"mapTable"); 方式存入的值 存入的dataset LONG类型值为空,其他值一切正常。
不采用OracleDataAdapter 读取值则能正常,求高手解答。
上面是调用存储过程方法
下面是读取数据展示:
下面是存储过程展示: 展开
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励10(财富值+成长值)+提问者悬赏110(财富值+成长值)
5个回答
展开全部
你尝试去读取Datatable中的content列看看他是不是每个cell真的为null值,可以像下面那样读取看看
this.TextBox1.Text = dataSet.Tables[0].Rows[0]["CONTENT"].ToString();
或
string content = dataSet.Tables[0].Rows[0]["CONTENT"].ToString();
追问
获取出来的依旧没数据
追答
null 和 空值是不一样的,null 是不知道什么数据(不可访问),空值是没有是没有数据(可访问)。如果不为null,那就是你读取转换数据方法有问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
值为空,应该是读取的时候出错,不知道你的SQL语句是带参数查询,还是直接写
死的语句,若是参数查询要把参数类型设置对。LongVarChar或LongRaw两种要
设置对。
dbParam.Add("SSN",OracleType.LongVarChar,SSN);
死的语句,若是参数查询要把参数类型设置对。LongVarChar或LongRaw两种要
设置对。
dbParam.Add("SSN",OracleType.LongVarChar,SSN);
更多追问追答
追问
我调用的是存储过程,直接返回一个虚拟表,表里面所有数据都是正常的,
在采用 OracleDataAdapter Fill 方法存入dataset 的时候出的问题 LONG类型的那一列值就变为空了 其他值在Dataset里面都正常
追答
你尝试下不用存储过程,写一个简单的查询用Fill方法试一下,得到的是否也是一样的。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
oracle中没有LONG类型。datatable的结构是会由dataadapter生成的。如果值为空说明你的代码有问题
追问
代码有问题 那应该所有数据都有问题才对呢 关键是只有这个类型的数据为空
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
估计是数据类型不对应,你查询时使用to_char()试试将long查询出来用string类型接收看看能不能行
追问
to_char() 转换不了LONG类型的
追答
大数据建议使用blob类型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
支持最长,转换一下数据格式
追问
在哪儿转换,怎么转换
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询