如何在黑莓手机中创建数据库

时间:2012-07-21 12:09:48

标签: blackberry

  1. 列出项目

    我开发了一个应用程序,其中使用sq lite数据库。这在模拟器上运行正常。但是当我们应用程序部署在Blackberry曲线8520移动时。告诉我们数据库不存在。有人知道答案请快速回复...

  2. 我的代码是 - >

    public static void insertData( String pass , String cpass)
    {
        boolean fl=false;
        String root = null;
        MainScreen ms = new MainScreen();
        Enumeration e = FileSystemRegistry.listRoots();
        while (e.hasMoreElements())
        {
            root = (String)e.nextElement();
            if(root.equalsIgnoreCase("store/"))
            {
                fl=true;
            }
        }
        if(!fl)
        {
            UiApplication.getUiApplication().invokeLater(new Runnable()
            {
                public void run()
                {
                    Dialog.alert("This application requires an SD card to be present." + 
                                 "Exiting application...");
                    System.exit(0);
                }
            });
        }
        else
        {
            String dbLocation = "C:/om12345/sql/res/store/";
            // Create URI
            // Statement st=null;
            try
            {
                URI myURI = URI.create("file:///store/home/user/databases/database.sqlite");
                //URI myURI1=URI.
                d = DatabaseFactory.create(myURI);
                Statement st = d.createStatement( "insert into Admin (pass, Cpass) values('"+ pass+"','"+cpass+"')");
                st.prepare();
                st.execute();
                st.close();
                d.close();
                //ms.add(new RichTextField ("tata" + "tata1"));
                // UiApplication.getApplication.invokeLater(pushScreeen(ms));
            }
            catch ( Exception e1 )
            {
                System.out.println( e1.getMessage() );
                e1.printStackTrace();
            }
        }
    

3 个答案:

答案 0 :(得分:1)

您可能无法在/store上为8520存储sqlite数据库。有关详细信息,请参阅我对BlackBerry SQLite database creation: "filesystem not ready"的回答。

答案 1 :(得分:0)

首先需要更改“String dbLocation =”C:/ om12345 / sql / res / store /“;”的行因为它指的是开发计算机上的某个位置,但无法在移动设备上运行。您需要指向应用程序本身的“res”文件夹。

答案 2 :(得分:0)

如果内部存储空间不足1gb,则无法将数据库创建到商店目录中。您已将数据库保存在C目录中,该目录可从系统访问,但不能在设备上访问。因此将其位置更改复制到res文件夹中。 &安培;检查您是否有SD卡,然后使用/ SDCard保存数据库。 如果SDCard不可用,则可以访问数据库,如果您的内部存储空间超过1GB 看看这个链接

http://docs.blackberry.com/en/developers/deliverables/17952/SQLite_database_files_1219778_11.jsp