Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Android中从外部.sql文件导入Sqlite模式和Sqlite数据_Android_Sqlite_Android Sqlite - Fatal编程技术网

在Android中从外部.sql文件导入Sqlite模式和Sqlite数据

在Android中从外部.sql文件导入Sqlite模式和Sqlite数据,android,sqlite,android-sqlite,Android,Sqlite,Android Sqlite,要求:我不想使用任何java类创建数据库。我想为我的android应用程序提供schema.sql(创建数据库和表)和seeddata.sqlite(将数据插入表)文件。当我的应用程序第一次运行时,应该先运行schema.sqlite,然后再运行seeddata.sql。 问题:我不知道该怎么做。如果我理解您的问题,以下内容可能与您所寻找的内容大致相同:- SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase(this.getDa

要求:我不想使用任何java类创建数据库。我想为我的android应用程序提供schema.sql(创建数据库和表)和seeddata.sqlite(将数据插入表)文件。当我的应用程序第一次运行时,应该先运行schema.sqlite,然后再运行seeddata.sql。

问题:我不知道该怎么做。

如果我理解您的问题,以下内容可能与您所寻找的内容大致相同:-

    SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase(this.getDatabasePath("mydb"),null);
    // Loop through schema.sql (Noting that execSQL will only execute 1 SQL statment at a time)
    db.execSQL("CREATE TABLE IF NOT EXISTS tablea (_name TEXT, _anotherrow TEXT, _etc TEXT)");
    if (DatabaseUtils.queryNumEntries(db,"tablea") < 1) {
        // Loop through seeddata here (if actual SQL then use execSQL)
        ContentValues cv = new ContentValues();
        cv.put("_name", "This is the name.");
        cv.put("_anotherrow", "Someother data");
        cv.put("_etc", "and on and on.....");
        db.insert("tablea", null, cv);
    }
    Cursor csr = db.query("tablea",null,null,null,null,null,null);
    while (csr.moveToNext()) {
        Log.d("TABLEINFO","Row " + csr.getPosition());
        for(String s: csr.getColumnNames()) {
            Log.d("TABLEINFO","\tColumn=" + s + " Data=" + csr.getString(csr.getColumnIndex(s)));
        }
    }

完整工作解决方案
  • 1个文件schema.sql,该文件已放入资产文件夹(在本例中,该文件用于名为importschemanddata
    D:\Android\u Applications\importschemanddata\app\src\main\assets\schema.sql的项目)
:-

  • 2文件seeddata.sql(同样放在资产文件夹中)
:-

注意:您可能需要创建资产文件夹(有关位置,请参见上文)

  • 3代码(在本例中为MainActivity)
:-

初次运行的结果:- 后续运行的结果:-
逐行阅读您的文件(
java.io.BufferedReader#readLine
)并使用
SQLiteDatabase#execSQL
我感谢您,这是一个完美的解决方案。Thanks@MikeT是否可以通过android代码将.sql文件导入sqlite?如果可以,如何…@GajuKollur这就是答案(完整的工作解决方案)@MikeT但在解决方案中有一个模式文件…但我只有.sql文件..我必须通过读取此文件来创建一个适当的表,并通过读取相同的.sql文件将数据插入数据库..@GajuKollur 1 file 100文件,只要文件包含有效的sql,就可以使用相同的原则调用它们。您只需相应地修改代码。
11-24 17:06:04.601 3360-3360/? D/TABLEINFO: Row 0
11-24 17:06:04.601 3360-3360/? D/TABLEINFO:     Column=_name Data=This is the name.
11-24 17:06:04.601 3360-3360/? D/TABLEINFO:     Column=_anotherrow Data=Someother data
11-24 17:06:04.601 3360-3360/? D/TABLEINFO:     Column=_etc Data=and on and on.....
CREATE TABLE tablea (_id INTEGER PRIMARY KEY, _name TEXT, _otherdata TEXT, _etc)
CREATE TABLE tableb (_id INTEGER PRIMARY KEY, _name TEXT, _otherdata TEXT, _etc)
CREATE TABLE tablec (_id INTEGER PRIMARY KEY, _name TEXT, _otherdata TEXT, _etc)
INSERT INTO tablea (_name,_otherdata, _etc) VALUES("Fred","Data for Fred","even more data for Fred.")
INSERT INTO tablea (_name,_otherdata, _etc) VALUES("Bert","Data for Bert","even more data for Bert.")
INSERT INTO tablea (_name,_otherdata, _etc) VALUES("Tom","Data for Tom","even more data for Tom.")
INSERT INTO tablea (_name,_otherdata, _etc) VALUES("Harry","Harry has this data.","Harry has even more data.")
INSERT INTO tableb (_name,_otherdata, _etc) VALUES("Fred","Data for Fred","even more data for Fred.")
INSERT INTO tableb (_name,_otherdata, _etc) VALUES("Bert","Data for Bert","even more data for Bert.")
INSERT INTO tableb (_name,_otherdata, _etc) VALUES("Tom","Data for Tom","even more data for Tom.")
INSERT INTO tableb (_name,_otherdata, _etc) VALUES("Harry","Harry has this data.","Harry has even more data.")
INSERT INTO tablec (_name,_otherdata, _etc) VALUES("Fred","Data for Fred","even more data for Fred.")
INSERT INTO tablec (_name,_otherdata, _etc) VALUES("Bert","Data for Bert","even more data for Bert.")
INSERT INTO tablec (_name,_otherdata, _etc) VALUES("Tom","Data for Tom","even more data for Tom.")
INSERT INTO tablec (_name,_otherdata, _etc) VALUES("Harry","Harry has this data.","Harry has even more data.")
public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        InputStream schema, seeddata;
        String lineofdata;
        SQLiteDatabase db;
        Cursor csr;

        try {
            schema = this.getAssets().open("schema.sql");
            seeddata = this.getAssets().open("seeddata.sql");
        } catch (IOException ioe) {
            ioe.printStackTrace();
            return; //???? used return just for brevity
        }
        File dbpath = new File(this.getDatabasePath("mydb").getParent());
        if (!dbpath.exists()) {
            dbpath.mkdirs();

            db = SQLiteDatabase.openOrCreateDatabase(this.getDatabasePath("mydb"), null);
            BufferedReader br = new BufferedReader(new InputStreamReader(schema));
            try {
                while ((lineofdata = br.readLine()) != null) {
                    Log.d("ACTIONSQL", "Actioning " + lineofdata);
                    db.execSQL(lineofdata);
                }
                schema.close();
            } catch (IOException ioe) {
                ioe.printStackTrace();
                try {
                    schema.close();
                } catch (IOException ioe2) {
                    ioe2.printStackTrace();
                }
            }
            db.close();
            db = SQLiteDatabase.openDatabase(this.getDatabasePath("mydb").getPath(),null, Context.MODE_PRIVATE);
            lineofdata = "";
            br = new BufferedReader(new InputStreamReader(seeddata));
            try {
                while ((lineofdata = br.readLine()) != null) {
                    Log.d("ACTIONSQL", "Actioning " + lineofdata);
                    db.execSQL(lineofdata);
                }
            } catch (IOException ioe) {
                ioe.printStackTrace();
                db.endTransaction();
            }
        }  else {
            db = SQLiteDatabase.openDatabase(this.getDatabasePath("mydb").getPath(),null,Context.MODE_PRIVATE);
        }

        csr = db.query("tablea",null,null,null,null,null,null);
        while (csr.moveToNext()) {
            Log.d("TABLEINFO","Row " + csr.getPosition());
            for(String s: csr.getColumnNames()) {
                Log.d("TABLEINFO","\tColumn=" + s + " Data=" + csr.getString(csr.getColumnIndex(s)));
            }
        }
        csr = db.query("tableb",null,null,null,null,null,null);
        while (csr.moveToNext()) {
            Log.d("TABLEINFO","Row " + csr.getPosition());
            for(String s: csr.getColumnNames()) {
                Log.d("TABLEINFO","\tColumn=" + s + " Data=" + csr.getString(csr.getColumnIndex(s)));
            }
        }
        csr = db.query("tablec",null,null,null,null,null,null);
        while (csr.moveToNext()) {
            Log.d("TABLEINFO","Row " + csr.getPosition());
            for(String s: csr.getColumnNames()) {
                Log.d("TABLEINFO","\tColumn=" + s + " Data=" + csr.getString(csr.getColumnIndex(s)));
            }
        }
    }
}
11-24 19:20:02.182 4652-4652/? D/ACTIONSQL: Actioning CREATE TABLE tablea (_id INTEGER PRIMARY KEY, _name TEXT, _otherdata TEXT, _etc)
11-24 19:20:02.187 4652-4652/? D/ACTIONSQL: Actioning CREATE TABLE tableb (_id INTEGER PRIMARY KEY, _name TEXT, _otherdata TEXT, _etc)
11-24 19:20:02.191 4652-4652/? D/ACTIONSQL: Actioning CREATE TABLE tablec (_id INTEGER PRIMARY KEY, _name TEXT, _otherdata TEXT, _etc)
11-24 19:20:02.197 4652-4652/? D/ACTIONSQL: Actioning INSERT INTO tablea (_name,_otherdata, _etc) VALUES("Fred","Data for Fred","even more data for Fred.")
11-24 19:20:02.201 4652-4652/? D/ACTIONSQL: Actioning INSERT INTO tablea (_name,_otherdata, _etc) VALUES("Bert","Data for Bert","even more data for Bert.")
11-24 19:20:02.204 4652-4652/? D/ACTIONSQL: Actioning INSERT INTO tablea (_name,_otherdata, _etc) VALUES("Tom","Data for Tom","even more data for Tom.")
11-24 19:20:02.206 4652-4652/? D/ACTIONSQL: Actioning INSERT INTO tablea (_name,_otherdata, _etc) VALUES("Harry","Harry has this data.","Harry has even more data.")
11-24 19:20:02.209 4652-4652/? D/ACTIONSQL: Actioning INSERT INTO tableb (_name,_otherdata, _etc) VALUES("Fred","Data for Fred","even more data for Fred.")
11-24 19:20:02.213 4652-4652/? D/ACTIONSQL: Actioning INSERT INTO tableb (_name,_otherdata, _etc) VALUES("Bert","Data for Bert","even more data for Bert.")
11-24 19:20:02.216 4652-4652/? D/ACTIONSQL: Actioning INSERT INTO tableb (_name,_otherdata, _etc) VALUES("Tom","Data for Tom","even more data for Tom.")
11-24 19:20:02.219 4652-4652/? D/ACTIONSQL: Actioning INSERT INTO tableb (_name,_otherdata, _etc) VALUES("Harry","Harry has this data.","Harry has even more data.")
11-24 19:20:02.222 4652-4652/? D/ACTIONSQL: Actioning INSERT INTO tablec (_name,_otherdata, _etc) VALUES("Fred","Data for Fred","even more data for Fred.")
11-24 19:20:02.224 4652-4652/? D/ACTIONSQL: Actioning INSERT INTO tablec (_name,_otherdata, _etc) VALUES("Bert","Data for Bert","even more data for Bert.")
11-24 19:20:02.227 4652-4652/? D/ACTIONSQL: Actioning INSERT INTO tablec (_name,_otherdata, _etc) VALUES("Tom","Data for Tom","even more data for Tom.")
11-24 19:20:02.231 4652-4652/? D/ACTIONSQL: Actioning INSERT INTO tablec (_name,_otherdata, _etc) VALUES("Harry","Harry has this data.","Harry has even more data.")
11-24 19:20:02.235 4652-4652/? D/TABLEINFO: Row 0
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_id Data=1
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_name Data=Fred
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_otherdata Data=Data for Fred
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_etc Data=even more data for Fred.
11-24 19:20:02.235 4652-4652/? D/TABLEINFO: Row 1
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_id Data=2
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_name Data=Bert
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_otherdata Data=Data for Bert
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_etc Data=even more data for Bert.
11-24 19:20:02.235 4652-4652/? D/TABLEINFO: Row 2
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_id Data=3
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_name Data=Tom
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_otherdata Data=Data for Tom
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_etc Data=even more data for Tom.
11-24 19:20:02.235 4652-4652/? D/TABLEINFO: Row 3
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_id Data=4
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_name Data=Harry
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_otherdata Data=Harry has this data.
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_etc Data=Harry has even more data.
11-24 19:20:02.235 4652-4652/? D/TABLEINFO: Row 0
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_id Data=1
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_name Data=Fred
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_otherdata Data=Data for Fred
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_etc Data=even more data for Fred.
11-24 19:20:02.235 4652-4652/? D/TABLEINFO: Row 1
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_id Data=2
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_name Data=Bert
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_otherdata Data=Data for Bert
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_etc Data=even more data for Bert.
11-24 19:20:02.235 4652-4652/? D/TABLEINFO: Row 2
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_id Data=3
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_name Data=Tom
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_otherdata Data=Data for Tom
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_etc Data=even more data for Tom.
11-24 19:20:02.235 4652-4652/? D/TABLEINFO: Row 3
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_id Data=4
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_name Data=Harry
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_otherdata Data=Harry has this data.
11-24 19:20:02.235 4652-4652/? D/TABLEINFO:     Column=_etc Data=Harry has even more data.
11-24 19:20:02.235 4652-4652/? D/TABLEINFO: Row 0
11-24 19:20:02.236 4652-4652/? D/TABLEINFO:     Column=_id Data=1
11-24 19:20:02.236 4652-4652/? D/TABLEINFO:     Column=_name Data=Fred
11-24 19:20:02.236 4652-4652/? D/TABLEINFO:     Column=_otherdata Data=Data for Fred
11-24 19:20:02.236 4652-4652/? D/TABLEINFO:     Column=_etc Data=even more data for Fred.
11-24 19:20:02.236 4652-4652/? D/TABLEINFO: Row 1
11-24 19:20:02.236 4652-4652/? D/TABLEINFO:     Column=_id Data=2
11-24 19:20:02.236 4652-4652/? D/TABLEINFO:     Column=_name Data=Bert
11-24 19:20:02.236 4652-4652/? D/TABLEINFO:     Column=_otherdata Data=Data for Bert
11-24 19:20:02.236 4652-4652/? D/TABLEINFO:     Column=_etc Data=even more data for Bert.
11-24 19:20:02.236 4652-4652/? D/TABLEINFO: Row 2
11-24 19:20:02.236 4652-4652/? D/TABLEINFO:     Column=_id Data=3
11-24 19:20:02.236 4652-4652/? D/TABLEINFO:     Column=_name Data=Tom
11-24 19:20:02.236 4652-4652/? D/TABLEINFO:     Column=_otherdata Data=Data for Tom
11-24 19:20:02.236 4652-4652/? D/TABLEINFO:     Column=_etc Data=even more data for Tom.
11-24 19:20:02.236 4652-4652/? D/TABLEINFO: Row 3
11-24 19:20:02.236 4652-4652/? D/TABLEINFO:     Column=_id Data=4
11-24 19:20:02.236 4652-4652/? D/TABLEINFO:     Column=_name Data=Harry
11-24 19:20:02.236 4652-4652/? D/TABLEINFO:     Column=_otherdata Data=Harry has this data.
11-24 19:20:02.236 4652-4652/? D/TABLEINFO:     Column=_etc Data=Harry has even more data.
11-24 19:20:20.605 4709-4709/mjt.importschemaanddata D/TABLEINFO: Row 0
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_id Data=1
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_name Data=Fred
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_otherdata Data=Data for Fred
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_etc Data=even more data for Fred.
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO: Row 1
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_id Data=2
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_name Data=Bert
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_otherdata Data=Data for Bert
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_etc Data=even more data for Bert.
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO: Row 2
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_id Data=3
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_name Data=Tom
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_otherdata Data=Data for Tom
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_etc Data=even more data for Tom.
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO: Row 3
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_id Data=4
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_name Data=Harry
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_otherdata Data=Harry has this data.
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_etc Data=Harry has even more data.
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO: Row 0
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_id Data=1
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_name Data=Fred
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_otherdata Data=Data for Fred
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_etc Data=even more data for Fred.
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO: Row 1
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_id Data=2
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_name Data=Bert
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_otherdata Data=Data for Bert
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_etc Data=even more data for Bert.
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO: Row 2
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_id Data=3
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_name Data=Tom
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_otherdata Data=Data for Tom
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_etc Data=even more data for Tom.
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO: Row 3
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_id Data=4
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_name Data=Harry
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_otherdata Data=Harry has this data.
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_etc Data=Harry has even more data.
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO: Row 0
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_id Data=1
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_name Data=Fred
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_otherdata Data=Data for Fred
11-24 19:20:20.606 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_etc Data=even more data for Fred.
11-24 19:20:20.607 4709-4709/mjt.importschemaanddata D/TABLEINFO: Row 1
11-24 19:20:20.607 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_id Data=2
11-24 19:20:20.607 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_name Data=Bert
11-24 19:20:20.607 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_otherdata Data=Data for Bert
11-24 19:20:20.607 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_etc Data=even more data for Bert.
11-24 19:20:20.607 4709-4709/mjt.importschemaanddata D/TABLEINFO: Row 2
11-24 19:20:20.607 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_id Data=3
11-24 19:20:20.607 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_name Data=Tom
11-24 19:20:20.607 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_otherdata Data=Data for Tom
11-24 19:20:20.607 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_etc Data=even more data for Tom.
11-24 19:20:20.607 4709-4709/mjt.importschemaanddata D/TABLEINFO: Row 3
11-24 19:20:20.607 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_id Data=4
11-24 19:20:20.607 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_name Data=Harry
11-24 19:20:20.607 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_otherdata Data=Harry has this data.
11-24 19:20:20.607 4709-4709/mjt.importschemaanddata D/TABLEINFO:   Column=_etc Data=Harry has even more data.