1

iOS プロジェクトに SQLITE データベースがあり、ネイティブの IOS コードからアクセスできます。アクセスしてデータを読み取ることができます。

次の写真で、私がやっている方法とプロジェクト構造を確認できます。ここに画像の説明を入力

そして、Phonegap を使用して同じことを試みます。

   var db;
   var shortName = 'myTestDb.db';
   var version = '1.0';
   var displayName = 'myTestDb';
   var maxSize = 65535;


   // list the values in the database to the screen using jquery to
   //update the #lbUsers element
   function ListDBValues() {

       if (!window.openDatabase) {
           alert('Databases are not supported in this browser.');
           return;
       }
       $('#myDbElements').html('');

       db.transaction(function(transaction) {
           transaction.executeSql("SELECT FIRST_NAME FROM dbo_RE_USER;", [],
           function(transaction, result) {
               console.log("result");                                 
               if (result != null && result.rows != null) {
                   console.log("result is not null");
                   for (var i = 0; i < result.rows.length; i++) {
                       var row = result.rows.item(i);
                       //console.log(row);
                      debugObject(row);


                    $('#myDbElements').append('<br>' + row["FIRST_NAME"]);// + " " + row.LAST_NAME );
                   }
               }
            PrecApp.I_SCROLL.refresh();   
           },errorHandler);

       },errorHandler,nullHandler);        
       return;
   }

   function debugObject(obj) {
    console.log("ROW:");        
    for (n in obj)
//            alert(n + ":" + obj[n]);
        console.log(n + ":" + obj[n]);
   }

しかし、私の dbo_re_users テーブルが見つかりません。なんで?

4

1 に答える 1

1

JavaScript で開いたデータベースは、まったく別のデータベースです。名前は同じですが、読み取り専用のアプリ バンドルには含まれていません。

特定のデータベース ファイルにアクセスする必要がある場合は、プラグインを使用する必要があります。

于 2012-11-21T13:08:22.947 に答える