为什么vs2010接收不到Oracle种的string数据,代码和sql语句是没有问题的

问题描述

开发环境是vs2010,oracle数据库,我代码和sql语句执行时没有问题的,但是就我的机器取数据的时候程序没有报错,但是得不到数据,oracle后台取数据的的sql执行方法是公共方法,是没有问题的,因为别人使用都没有问题,然后就我的计算机取不到数据,别人操作我功能是可以取得到,所以怀疑是环境问题。求帮助就是获取不到啊,然后就是如果取得是int型数据可以去到,string型就取不到。。。。。。别人机器不论是什么数据都是可以取到的

解决方案

解决方案二:
读取个数据库数据,有那么难吗?还需要什么公共sql,自己写个别人和你的千差万别把
解决方案三:
1,把sql拿出来,放到sqlplus或toad之类的客户端工具里跑一下,来证明你的SQL没问题。2,自己用Connection,Command写一段测试代码取数据,如果取不出或报错了,再把代码和SQL贴上来,这样别人才能帮你分析是什么原因。就算你说的公共组件没问题,但你用错了,而且正好异常被抛弃了呢?
解决方案四:
如果代码没有问题,sql是公用的,那就查相关配置信息,和别人的主要差别也就这个了
解决方案五:
如果string取不出来指的是:中文乱码,那需要在系统环境变量里增加:NLS_LANG定义,值视情况,设置成:AMERICAN_AMERICA.ZHS16GBK,AMERICAN_AMERICA.UTF8什么的。
解决方案六:
你是怎么取的?没太看明白问题
解决方案七:
你取数据的代码,拿出来看看

时间: 2024-10-27 02:25:03

为什么vs2010接收不到Oracle种的string数据,代码和sql语句是没有问题的的相关文章

Oracle性能优化学习笔记之共享Sql语句

       为了不重复解析相同的SQL语句,在第一次解析之后,Oracle将SQL语句存放在内存中.这块位于系统全局区域SGA(systemglobal area)的共享池(shared buffer pool中的内存可以被所有的数据库用户共享.因此,当你执行一个SQL语句(有时被称为一个游标)时,如果它和之前执行过的语句完全相同,Oracle就能很快获得已经被解析的语句以及最好的执行方案.Oracle的这个功能大大地提高了SQL的执行性能并节省了内存的使用.        可惜的是ORACL

oracle中怎么确定性能差的SQL语句

前者很容易定位.所有的操作系统都可以让我们查看 CPU 密集型任务.这些任务可以追溯到一个特定用户,一个特定应用程序模块. CPU 密集型模块一般都是由较差的代码和/或结构造成,而不是性能差的 SQL.一旦确定模块,你必须试图使之更有效率.一个可能的解决方案是将把某些处理移除程序,让数据库处理(高明点的 SQL,存储对象,内联函数,数组处理等). 第二个是 I/O 密集型的 SQL 语句.这些语句会导致大量的数据库 I/O(全表扫描,排序,更新等),并以很高代价运行几个小时.从 Oracle 7

ORACLE中数据递归查询遍历sql语句

查询遍历,需要在将数据在基表中按照层次结构进行存储.比如一个组织机构就是这样的典型例子: 实现语句: select column from table_name start with column=value connect by prior 父主键=子外键 例1:在oracle的emp 表中,每一条记录都有一个唯一标识当前雇员的empno和标识这个雇员的经理的mgr列.如果mgr 为空,则该雇员是该机构的最顶级.现在要列出每个雇员的层次结构(从顶到底): select lpad(' ',4*(

查询Oracle正在执行和执行过的SQL语句

---正在执行的 select a.username, a.sid,b.SQL_TEXT, b.SQL_FULLTEXT from v$session a, v$sqlarea b where a.sql_address = b.address ---执行过的 select b.SQL_TEXT,b.FIRST_LOAD_TIME,b.SQL_FULLTEXT from v$sqlarea b where b.FIRST_LOAD_TIME between '2009-10-15/09:24:4

Oracle创建主键自增表(sql语句实现)及触发器应用_oracle

1.创建表 复制代码 代码如下: createtableTest_Increase( useridnumber(10)NOTNULLprimarykey,/*主键,自动增加*/ usernamevarchar2(20) ); 2.创建自动增长序列 复制代码 代码如下: CREATESEQUENCETestIncrease_Sequence INCREMENTBY1--每次加几个 STARTWITH1--从1开始计数 NOMAXVALUE--不设置最大值,设置最大值:maxvalue9999 NO

oracle中得到一条SQL语句的执行时间的两种方式_oracle

oracle中如果需要得到一条SQL语句的执行时间可以用如下2种方式 复制代码 代码如下: SQL> set timing on; SQL> select count(*) from wea; COUNT(*) ---------- 39490 已用时间: 00: 00: 00.06 SQL> select sql_text, elapsed_time from v$sql 2 where sql_text like 'select count(*) from wea'; 未选定行 已用

Oracle中解析SQL语句的过程

为了将用户写的SQL文本转化为Oracle认识的且可执行的语句,这个过程就叫做解析过程.解析分为硬解析和软解析.一条SQL语句在第一次被执行时必须进行硬解析. 当客户端发出一条SQL语句(也可以是一个存储过程或者一个匿名PL/SQL块)进入shared pool时(注意,我们从前面已经知道,Oracle对这些SQL不叫做SQL语句,而是称为游标.因为Oracle在处理SQL时,需要很多相关的辅助信息,这些辅助信息与SQL语句一起组成了游标), Oracle首先将SQL文本转化为ASCII值,然后

Oracle中SQL语句解析的步骤

我们都知道在Oracle中每条SQL语句在执行之前都需要经过解析,这里面又分为软解析和硬解析.那么这两种解析有何不同之处呢?它们又分别是如何进行解析呢?Oracle内部解析的步骤又是如何进行的呢?下面我们就这些话题进行共同探讨. 在Oracle中存在两种类型的SQL语句,一类为DDL语句,他们是从来不会共享使用的,也就是每次执行都需要进行硬解析.还有一类就是DML语句,他们会根据情况选择要么进行硬解析,要么进行软解析.在Oracle 8i OCP教材的023中1-12有说明SQL语句的解析步骤,

SQL语句oracle中如何插入Date类型的数据

在开发的时候,经常要写条SQL语句将信息插入表中,插入的数据如果字段是date类型,就必须将date类型转换成字符串String类型在通过sql语句插入数据库.这是我字段唯一的方法,如果有高人请另赐教! 我的解决方法是用oracle中的to_date()方法,具体看下面的例子   Oracle中插入date数据代码    insert into news(ID,MSG,SEND_TIME,TIMER)    Oracle中插入date数据代码    values(20110101,'你好',to