为什么将JAVA数据写入数据库(ORACLE)中的表,在ORACLE中找不出写入的数据???
public User_info()
{
   jpanel1=(JPanel)this.getContentPane();
   jpanel1.setLayout(flowlayout2);
   jpanel1.add(username);
   jpanel1.add(txtusername);
   jpanel1.add(usersex);
   jpanel1.add(csex);
   jpanel1.add(userstatus);
   jpanel1.add(cstatus);
   jpanel1.add(usertel);
   jpanel1.add(txtusertel);
   jpanel1.add(userfamily);
   jpanel1.add(txtuserfamily);
   jpanel1.add(roomnumber);
   jpanel1.add(txtroomnumber);
   jpanel1.add(userbirth);
   jpanel1.add(txtuserbirth);
   jpanel1.add(userjob);
   jpanel1.add(txtuserjob);
   jpanel1.add(button_ok);
   jpanel1.add(button_cancel);
   jpanel1.add(button_modify);   button_ok.addActionListener(new ActionListener()
   {
     public void actionPerformed(ActionEvent e)
     {
         String name=txtusername.getText();
         String c1=(String)csex.getSelectedItem();
         String c2=(String)cstatus.getSelectedItem();
         String tel=txtusertel.getText();
         String family=txtuserfamily.getText();
         String room=txtroomnumber.getText();
         String birth=txtuserbirth.getText();
         String job=txtuserjob.getText();
         String sql="insert into ill values("+txtusername.getText()+","+csex.getSelectedItem()+","+cstatus.getSelectedItem()+","+txtusertel.getText()+","+txtuserfamily.getText()+","+txtroomnumber.getText()+","+txtuserbirth.getText()+","+txtuserjob.getText()+")";
         
         String url=new String();
         url="jdbc:oracle:thin:@127.0.0.1:1521:orcl:68659423";
         try{
         Class.forName("oracle.jdbc.driver.OracleDriver");
         Connection con=DriverManager.getConnection(url,"system","jojeylin");
         Statement stmt=con.createStatement();
         stmt.executeUpdate(sql);
         stmt.close();
         con.close();
         ex.print("写入成功");
         }
         catch(ClassNotFoundException ex){
           System.err.print(ex.getMessage());
        }
        catch(SQLException ex){
        System.out.println("\n***SQLException caught ***\n");
       }
      }
   });
}
}表的脚本是:
Enterprise Manager Database Control URL - (orcl) :http://localhost:1158/em数据库配置文件已经安装到 F:,同时其他选定的安装组件也已经安装到 F:\OraHome_1。iSQL*Plus URL 为:http://localhost:5561/isqlplusiSQL*Plus DBA URL 为:http://localhost:5561/isqlplus/dba

解决方案 »

  1.   

    手动事务提交试试
    conn.setAutoCommint(false);
    .............
    conn.commit(); 代码用PreparedStatement性能比Statementh好,而且防止SQL注入
      

  2.   

    运行的时候出现oracle.jdbc.driver.OracleDriver,这是怎么回事啊?而且还有个为0的数,不知道是什么意思
      

  3.   

    如果没有找到数据,那么说明没有写入成功.

    catch(SQLException ex){ 
            System.out.println("\n***SQLException caught ***\n"); 

    改为
    catch(Exception e){
    e.printStackTrace();

    运行时注意看出错信息.我怀疑是监听端口设置问题
    url="jdbc:oracle:thin:@127.0.0.1:1521:orcl:68659423"; 
    中68659423是否为监听端口呢?另外
    ex.print("写入成功"); 
    ex从何而来,且其中"写入成功"不妥当,改为"操作完成"比较贴切.因为没有看出来程序哪里对是否写入成功进行判断.
      

  4.   

    68659423是SID号,报出oracle.jdbc.driver.OracleDriver异常
      

  5.   

    后面把ORACLE包设置好后就可以连,但@127.0.0.1地址连的时候就出现用户名和密码不对,改成@orcl(主机字符串)连的时候就显示网络无连接?这是怎么回事啊?用IP连也不行,用主机名连也不行
      

  6.   

    @orcl跟网络连接有问题?我做的是不用网络连接的@127.0.0.1,但就出现用户名和密码错,跟网络连接的@orcl就说网络出问题(无连接)
      

  7.   

      url="jdbc:oracle:thin:@127.0.0.1:1521:orcl:68659423"; 这个有点问题吧:
    好像是:
    "jdbc:oracle:thin:@ip:1521:sid"