繁体   English   中英

如何在Android中连接到Oracle数据库?

[英]How to connect to an oracle database in android?

我有一个oracle数据库,我需要访问信息,但我不能。 我已经导入了OJDBC6驱动程序,我创建了该类:

public class JDBC_ORA    {
     static String userName="XXX";
     static String password="X";
     static String server="192.168.X.X";

     public Connection con;

     public void conexion() {        
         try {          
             Class.forName("oracle.jdbc.driver.OracleDriver");
             con = DriverManager.getConnection("jdbc:oracle:thin:" + userName + "/" + password+ "@"+server);            

         } catch (ClassNotFoundException e) {
             e.printStackTrace();
         } catch (SQLException e) {
             e.printStackTrace();
         } 
     }


     public void cerrar (Connection con) {
         try {
             con.close();
         } catch (SQLException e) {
             e.printStackTrace();

         }
     }
}

我在mainactivity中称它为:

 JDBC_ORA ora_con = new JDBC_ORA();   
    ora_con.conexion();
    try {
        Statement stmt = ora_con.con.createStatement();
        rset = stmt.executeQuery("select * from asdf where cid='"+ var + "'" );
        while (rset.next())
        {
            System.out.println(blablablabla);
            ora_con.con.commit();
        }
        stmt.close();
        ora_con.cerrar(ora_con.con);
    } catch (SQLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

并总是得到这个错误

Could not find class 'oracle.security.pki.OraclePKIProvider', referenced from method oracle.jdbc.driver.OracleDriver.<clinit>

Could not find class 'javax.management.MBeanServer', referenced from method oracle.jdbc.driver.OracleDriver.registerMBeans

有人能帮助我吗?

别。 如果这样做,则必须在应用程序中输入密码。 这意味着您的数据库是完全不安全的,任何拥有该应用程序副本并需要5分钟才能对其进行反编译的人都可以访问该数据库。 相反,请使用位于应用程序和数据库之间的Web服务。 这样,您就不需要密码即可离开计算机。

最佳做法是使用以Java,.Net,PHP等编写的Web服务。然后,您需要将应用程序与您创建的Web服务连接。 另一种方法是使用Oracle数据库移动服务器

您可以找到如何在Google上轻松创建网络服务。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM