如题
代码如下
<%StrSQL="Provider=OraOLEDB.Oracle.1;Password=manager;Persist Security Info=True;User ID=system;Data Source=yck" set conn=server.createobject("ADODB.CONNECTION") 
conn.open StrSQL 
Set rs= Server.CreateObject("ADODB.RecordSet") 
rs.open "select * from test where xm='yu'",conn,1,1 
text=rs.fields("xm") 
Response.write Text 
%> 
如果将上面的查询语句改成"select * from test",则可以查询到记录,并且在sqlplus中也可以查询到记录,查询结果如下
在sql*plus中显示的结果 
ID        XM        SEX        CX        ZJHM 
---------- ---------- ---------- ---------- ---------- 
123        yu        2          c          134343 
表结构 
名称                                      是否为空? 类型 
----------------------------------------- -------- ---------------------------- 
ID                                        NOT NULL VARCHAR2(10) 
XM                                                VARCHAR2(10) 
SEX                                                VARCHAR2(10) 
CX                                                VARCHAR2(10) 
ZJHM                                              VARCHAR2(10) 

解决方案 »

  1.   

    去web开发技术板块问一下啊
    和oracle没什么关系
      

  2.   

    谢谢楼上提醒,已经发到web区了
      

  3.   

    应该是PL/SQL字符串转换的问题吧,
      

  4.   

    1.你直接在sqlplus中执行select * from test where xm='yu' 看看能否查询出数据。。
    2.最悲惨的结果你页面的数据过去后是乱码。。最幸运的结果..xm字段里面有空格。。
      

  5.   

    rs.open "select * from test where xm='yu'",conn,1,1 
    改为
    rs.open "select * from test where rtrim(ltrim(xm))='yu'",conn,1,1 
      

  6.   

    数据查不到,是因为乱码的原因,重新建了一个表可以查到了,但是有个很奇怪的问题,我在程序中插入表的数据可以在程序中查询出来,但是在sqlplus中插入表中一个数据,在程序中就查不出来,在sqlplus中能查到所有的数据,包括程序插入的和sqlplus中插入的。
    例如,我在程序中插入3条数据,用sqlplus插入一条数据,这时在sqlplus中可以查到4条记录,但是在程序中只能查到3条在程序中插入的记录。
      

  7.   

    本人初学oracle所以会犯一些低级错误,呵呵。现在重新建表之后可以操作了,sqlplus插入记录之后没有提交,所以在程序中没有查到,这是犯了一个很弱智的错误。感谢大家的关注和支持,结贴了,有问题的时候再麻烦大家。