【问题标题】:Making a database for an Android app in Netbeans 8.0.2在 Netbeans 8.0.2 中为 Android 应用程序制作数据库
【发布时间】:2015-01-13 21:02:59
【问题描述】:

首先让我说我们是 android 编程的新手,但正在使用 youtube 和其他网站上的各种教程学习基础知识。我使用 Netbeans IDE 并安装了 Android SDK。我们要创建的应用程序基本上是一个应用程序,您可以在其中查看各种食谱。

Sine Netbeans 有这个 Apache Derby 数据库,我在数据库中添加了一些配方名称。现在使用这个网站的代码http://www.homeandlearn.co.uk/java/java_and_databases.html,我尝试直接从onCreate类连接到数据库。

问题是当我运行模拟器时它不输出 SQL 语句。

public void onCreate(Bundle savedInstanceState)
{


    try {
    String host,uName,uPass;
    host="jdbc:derby://localhost:1527/Recipes [dico on DICO]";
    uName="admin";
    uPass="admin";
    Connection con = DriverManager.getConnection(host, uName, uPass);
    Statement stmt = con.createStatement();

    String SQL = "select NAME from BREAKFAST";
    ResultSet rs = stmt.executeQuery(SQL);
    rs.next( );
    String fName=rs.getString("NAME");
    System.out.println(fName);


    }
    catch(SQLException err){
        System.out.println(err.getMessage());
    }


    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

}

【问题讨论】:

  • 像 NetBeans 这样的 IDE 是否“具有”Derby 并不重要(在这种情况下,无论“具有”是什么意思)。 Android 没有 Derby。它当然不应该在设备本身的localhost:1527 上运行 Derby 守护进程。
  • 如果您想在设备本身上拥有一个数据库,请使用 SQLite 谷歌

标签: java android netbeans derby javadb


【解决方案1】:

您不想在 PC 上直接通过手机访问数据库,但您应该做的是在手机上存储信息的数据库(如 SQLiteORMLite )或通过连接到服务器的 WebService 远程访问数据库,该服务器发回与数据库内容相关的所需信息。

【讨论】:

  • 对此进行扩展:当您在设备(模拟器/手机/平板电脑)上运行 android 应用程序时,localhost 就是该设备。运行 IDE 和 Derby 的不是您的开发人员机器。
  • 谢谢。尽管我知道直接从智能手机访问数据库是多么不安全,但它仍然是可能的。我们不会发布这个应用程序,只是制作一个并在课程中学习这样的错误。拥有 SQLite 会使应用程序在理论上太大,不是吗?但我会检查一下
猜你喜欢
  • 2016-01-13
  • 1970-01-01
  • 2015-09-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-14
  • 1970-01-01
  • 2014-10-01
相关资源
最近更新 更多