将SQLite文件从android mobile传输到PC VB.net问题
使用Android Studio easy java代码,如下所示将SQLite文件从android mobile传输到PC VB.net问题,android,vb.net,sqlite,Android,Vb.net,Sqlite,使用Android Studio easy java代码,如下所示 package com.George.database; import android.Manifest; import android.app.Activity; import android.content.ContentValues; import android.database.sqlite.SQLiteDatabase; import android.support.v4.app.ActivityCompat; i
package com.George.database;
import android.Manifest;
import android.app.Activity;
import android.content.ContentValues;
import android.database.sqlite.SQLiteDatabase;
import android.support.v4.app.ActivityCompat;
import android.os.Bundle;
import java.io.File;
public class DatabaseActivity extends Activity {
int Rcode;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, Rcode);
File exFile = new File("/storage/emulated/0/Download","/easy.db");
SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase(exFile, null);
db.execSQL("CREATE TABLE IF NOT EXISTS MyTable (Name text,tel text)");
ContentValues values = new ContentValues();
values.put("Name", "Mike");
values.put("tel", "123456789");
db.insert("MyTable", null, values);
db.close();
}
@Override
public void onRequestPermissionsResult(int R_code, String[] permissions, int[] grantResults) {
if (grantResults[0] == 0) {
} else {
finish();
}
}
}
将easy.db复制到PC
在下面编写easy VB.net 2017 SQLite viewer open easy.db错误消息
System.Data.SQLite.SQLiteException:打开的文件不是数据库文件,而是加密文件或不是数据库文件
对SQLite使用DB浏览器,导出到sql文件,然后再次导入到SQLite
再次运行VB.net代码没关系
有人能告诉我为什么吗?你确定你创建的版本与你创建的版本相同吗?似乎导出的db是版本3,您在VS中使用的是版本4。db浏览器可以打开所有版本。我的VB.net2017 System.Data.SQLite版本是1.0.66.0,对吗?这是一个内部版本号,不是SQLite Engine的版本。您必须以正确的方式使用某些内容来生成db。您必须扩展一个
SQLiteOpenHelper
类,然后在其构造函数上,您必须将超级类称为super(上下文,DB\u名称,null,DB\u版本)代码>其中DB_版本可以是一个数字3或4,取决于您要创建的版本(在java中)。您的意思是DB版本1、2或3?今天我要试试。